安装Docker
一、查看内核版本
uname -r
二、把yum包更新到最新
sudo yum update
三、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
四、设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
五、查看仓库中docker版本
yum list docker-ce --showduplicates | sort -r
六、安装docker
sudo yum install docker-ce
七、检查版本
docker -v
八、启动Docker,设置开机启动,停止Docker,重启Docker,Docker状态
sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl stop docker
sudo systemctl restart docker
sudo systemctl status docker
配置阿里云镜像加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://017449r6.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
Docker常用命令
#启动Docker
sudo systemctl start docker
#设置开机启动
sudo systemctl enable docker
#停止Docker
sudo systemctl stop docker
#重启Docker
sudo systemctl restart docker
#Docker状态
sudo systemctl status docker
Docker镜像命令
#查看镜像
docker images
docker images -q #查看所有镜像ID
#搜索镜像
docker search [name] #nginx|redis|mysql|centos
#拉取镜像
docker pull [name:tag] #默认latest,可以加版本号例如:redis:5.0
#删除镜像
docker rmi [name:tag | image id]
#清空镜像
docker rmi `docker images -q`
Docker容器命令
#查看容器
docker ps #运行中容器
docker ps -a #全部容器【包含历史容器】
docker ps -aq #全部容器ID【包含历史容器】
#创建容器
docker run 参数
· -i 保持容器运行,通常与-t同时使用,-it容器创建后自动进入容器中,退出容器后,容器自动关闭。
· -t 为容器重新分配一个伪输入终端。
· -d 以守护模式在后台运行,需要使用docker exec 进入容器,退出后容器不会关闭。
· -it 创建的容器一般称为交互式容器,-id 创建的容器一般称为守护式容器
· --name 为创建的容器命名。
#进入容器
docker exec 参数
#启动容器
docker start [name | id]
#停止容器
docker stop [name | id]
#删除容器
docker rm [name | id]
#查看容器信息
docker inspect [name | id]
Docker容器的数据卷
容器数据难题:
1、Docker容器删除后,在容器中产生的数据还在吗?答:不在
2、容器和宿主机可以直接交换数据吗?答:不可以
3、容器之间如何进行数据交互?
解决方案:数据卷【数据持久化】
· 数据卷是宿主机中的一个目录或文件
· 当容器目录和数据卷目录绑定后,对方的修改会立即同步
· 一个数据卷可以被多个容器同时挂载
Docker数据卷的配置
注意事项:
1、目录必须是绝对路径
2、如果目录不存在,会自动创建
3、可以挂载多个数据卷【-v ...:... -v ...:...】
#创建启动容器时,使用-v参数 设置数据卷
docker run ... -v 宿主机目录(文件):容器内目录(文件)
Docker数据卷容器
多容器进行数据交换方式
1、多个容器挂载同一个数据卷
2、数据卷容器
#创建c3数据卷容器
docker run -it --name=c3 -v /volume centos:centos7 #挂载容器自身目录
docker run -it --name=c3 -v /root/data:/volume centos:centos7 #挂载宿主机目录
#创建c1 c2容器并挂载c3数据卷容器
docker run -it --name=c1 --volumes-from c3 centos:centos7
docker run -it --name=c2 --volumes-from c3 centos:centos7
网友评论