1.查看版本
uname -a
2.把yum包更新到最新
yum update
3.安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
4.设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5.查看仓库中的docker版本,选择指定的版本安装,最好安装稳定版的
yum list docker-ce --showduplicates | sort -r
6.查看是否安装了docker
yum list installed | grep docker
7.卸载已安装的docker
#yum erase docker-ce.x86_64
yum -y remove docker-ce.x86_64
#删除容器\镜像
rm -rf /var/lib/docker
8.安装docker
#yum install docker-ce-17.12.0.ce
yum install docker-ce.x86_64
9.启动docker,并设置开启自动
systemctl start docker
systemctl enable docker
10.是否安装成功
docker version
docker的一些常用命令:
#查看当前正在运行的容器
docker ps
#查看所有容器的状态
docker ps -a
#查看本地镜像
docker images
#删除容器
docker rm id/name
#删除镜像
docker rmi id/name
#启动/停止某容器
docker start/stop id/name
#启动一个伪终端以交互式的方式进入某个容器(使用exit退出后容器不停止运行)
docker exec -ti id
#进入某容器(使用exit退出后容器也跟着停止运行)
docker attach id
镜像加速地址:
vim /etc/docker/daemon.json
#没有就创建,写入:
{
"registry-mirrors": [""https://dockerhub.icu"","https://registry.cn-hangzhou.aliyuncs.com/"]
}
#更新下载源
systemctl daemon-reload
#重启docker
systemctl restart docker
docker容器与宿主机时间不一致时:
构建dockerfile文件时加入以下命令。自定义该镜像的时间格式及时区:
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
docker常用命令:
# 删除异常停止的docker容器
docker rm `docker ps -a | grep Exited | awk '{print $1}'`
# 删除名称或标签为none的镜像
docker rmi -f `docker images | grep '<none>' | awk '{print $3}'`
# 停止所有容器
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop
# 删除所有容器
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
# 查找镜像依赖:
docker image inspect --format='{{.RepoTags}} {{.Id}} {{.Parent}}' $(docker image ls -q --filter since=镜像Id)
#输出日志到指定目录
docker logs --since="2020/1/16" 容器id >> 日志 + 服务名称.log
#进容器
docker exec -it xxx bash