概述:
docker是一种容器技术,解决软件跨环境迁移的问题
安装
yum install -y docker-ce
#ifconfig命令不好使
yum install -y net-tools
#vim
yum install -y vim
安装docker
yum install -y docker-ce
1. docker架构
仓库:hub.docker.com
镜像:是一堆文件
容器:是根据镜像创建出来的小型linux系统
配置镜像加速器
vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
systemctl restart docker
2. docker命令
服务命令
systemctl start docker
systemctl restart docker
systemctl status docker
systemctl stop docker
systemctl enable docker #开机自启
镜像是一堆文件,而容器是镜像生成的linux系统
镜像命令
docker images
docker search mysql
docker pull mysql:版本号
docker rmi 镜像id 注意:删除镜像时,要先将该镜像创建的容器先删除
容器命令
docker ps -a
创建容器
守护式:创建后台进程
docker run -di --name=容器名字 镜像:版本
交互时:创建完会立刻进入容器,一旦exit退出以后,容器会关机
docker run -ti --name=容器名字 镜像:版本 /bin/bash
docker exec -it 容器名字 /bin/bash #进入容器
docker start 容器名字
docker stop 容器名字
docker rm 容器名字 注意:先停止容器,然后才能删除
docker inspect 容器名字
数据卷
是宿主机中的一个目录或文件
docker run ........ -v 宿主机目录:容器目录.....
docker run -di --name=c4 -v /root/a:/root/b centos:7
docker run -di --name=c5 -v /root/a:/root/c centos:7
docker run -di --name=c6 \
-v /root/a1:/root/c1 \
-v /root/a2:/root/c2 \
centos:7
1. 目录必须是绝对路径
2. 如果目录不存在,会自动创建
3. 可以挂载多个数据卷
docker run -di --name=c6 -v /root/abc centos:7
docker run -it --name=c7 --volumes-from c4 centos:7 /bin/bash
容器保存为镜像:docker commit 容器id 镜像名称:版本号
镜像保存tar文件:docker save -o 压缩文件名称 镜像名称:版本号
将tar文件加载成镜像:docker load -i 压缩文件名称