1. 查看是否已存在 docker
docker version
2. 如果存在,删除旧版本 docker
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
3. 检查内核版本,返回的值大于 3.10 即可
uname -r
4. 安装所需的软件包
yum-utils
提供的 yum-config-manager
device-mapper-persistent-data
和 lvm2
yum install -y yum-utils device-mapper-persistent-data lvm2
5. yum-config-manager
添加镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
6. 可以启用 edge 和测试存储库,默认是关闭
# 开启 yum-config-manager --enable docker-ce-edge yum-config-manager --enable docker-ce-test # 关闭 yum-config-manager --disable docker-ce-edge yum-config-manager --disable docker-ce-test
7. 安装 docker-ce
yum install docker-ce
8. 启动 docker
systemctl start docker # centos7.x service docker start # centos6.x
9. 查看 docker
状态
systemctl status docker
10. 测试运行 docker
docker run hello-world
11. 重新启动 docker
systemctl restart docker # centos7.x service docker restart # centos6.x
12. 关闭 docker
systemctl stop docker # centos7.x service docker stop # centos6.x
13. 设置 docker
开机启动
systemctl enable docker
14. 查看版本号
docker version
15. 查看是否运行
ps -ef|grep docker
16. 其他命令
# 查看容器日志 docker logs 容器名称/id # 设置容器自动重启,默认是 no docker update --restart=always 容器名称/id # 查看是否在运行 docker ps # 查看所有容器包括停止运行的 docker ps -a # 停止容器 docker stop 容器名称/id # 删除容器 docker rm 容器名称/id # 查看所有镜像 docker images # 查询镜像库 docker search mysql (项目名称) # 拉取镜像 docker pull mysql:5.7 (项目名,可加版本号,用 : 隔开) # 重启容器 docker restart 容器名称/id # 删除镜像 docker rmi 镜像id
17. docker
的默认安装路径
docker
的默认安装路径在/var/lib/docker
[root@bogon ~]# cd /var/lib/docker [root@bogon docker]# ll 总用量 4 drwx------. 2 root root 24 8月 8 14:58 builder drwx------. 4 root root 92 8月 8 14:58 buildkit drwx------. 4 root root 150 8月 14 11:40 containers drwx------. 3 root root 22 8月 8 14:58 image drwxr-x---. 3 root root 19 8月 8 14:58 network drwx------. 27 root root 4096 8月 14 11:40 overlay2 drwx------. 4 root root 32 8月 8 14:58 plugins drwx------. 2 root root 6 8月 14 11:24 runtimes drwx------. 2 root root 6 8月 8 14:58 swarm drwx------. 2 root root 6 8月 14 11:24 tmp drwx------. 2 root root 6 8月 8 14:58 trust drwx------. 3 root root 97 8月 8 18:51 volumes [root@bogon docker]#
docker
支持多种graphDriver
, 如:vfs
、devicemapper
、overlay
、overlay2
、aufs
等, 我的使用的存储驱动是overlay2
使用不同的存储驱动, 会在
/var/lib/docker
目录下以驱动名称命名生成存储文件夹
drwx------. 27 root root 4096 8月 14 11:40 overlay2
- 镜像的位置在
/var/lib/docker/image
下所使用驱动名称命名的文件夹中, 我的存储驱动是overlay2
, 所以目录是/var/lib/docker/image/overlay2
root@bogon docker]# cd /var/lib/docker/image [root@bogon image]# ll 总用量 0 drwx------. 5 root root 81 8月 8 18:50 overlay2 [root@bogon image]# cd overlay2/ [root@bogon overlay2]# ll 总用量 4 drwx------. 4 root root 58 8月 8 15:04 distribution drwx------. 4 root root 37 8月 8 14:58 imagedb drwx------. 5 root root 45 8月 8 18:08 layerdb -rw-------. 1 root root 789 8月 8 18:50 repositories.json [root@bogon overlay2]#
- 查看
repositories.json
文件
cat /var/lib/docker/image/overlay2
[root@bogon ~]# cat /var/lib/docker/image/overlay2/repositories.json {"Repositories":{"b3log/solo":{"b3log/solo:latest":"sha256:3ad1297684d5fb4019421e747c8214ec339666846cdd1b41cb3c7ad32eb1da94","b3log/solo@sha256:4cf76d515a6fdb8352cab57102620b1f3f3a56a9f83e48ea46557a3e4dfe355d":"sha256:3ad1297684d5fb4019421e747c8214ec339666846cdd1b41cb3c7ad32eb1da94"},"mysql":{"mysql:5.7":"sha256:f6509bac49801f48628167728aba66d64533aaa7d384e03b75a8fe4e6c0f6599","mysql@sha256:540488d8f0e04c1077d17934d1c1511fe417e2221dff508ce4621f5efe6131db":"sha256:f6509bac49801f48628167728aba66d64533aaa7d384e03b75a8fe4e6c0f6599"},"nginx":{"nginx:latest":"sha256:e445ab08b2be8b178655b714f89e5db9504f67defd5c7408a00bade679a50d44","nginx@sha256:eb3320e2f9ca409b7c0aa71aea3cf7ce7d018f03a372564dbdb023646958770b":"sha256:e445ab08b2be8b178655b714f89e5db9504f67defd5c7408a00bade679a50d44"}}}
- 这是一个
json
文件, 我们来格式化
cat /var/lib/docker/image/overlay2/repositories.json | python -m json.tool
[root@bogon ~]# cat /var/lib/docker/image/overlay2/repositories.json | python -m json.tool { "Repositories": { "b3log/solo": { "b3log/solo:latest": "sha256:3ad1297684d5fb4019421e747c8214ec339666846cdd1b41cb3c7ad32eb1da94", "b3log/solo@sha256:4cf76d515a6fdb8352cab57102620b1f3f3a56a9f83e48ea46557a3e4dfe355d": "sha256:3ad1297684d5fb4019421e747c8214ec339666846cdd1b41cb3c7ad32eb1da94" }, "mysql": { "mysql:5.7": "sha256:f6509bac49801f48628167728aba66d64533aaa7d384e03b75a8fe4e6c0f6599", "mysql@sha256:540488d8f0e04c1077d17934d1c1511fe417e2221dff508ce4621f5efe6131db": "sha256:f6509bac49801f48628167728aba66d64533aaa7d384e03b75a8fe4e6c0f6599" }, "nginx": { "nginx:latest": "sha256:e445ab08b2be8b178655b714f89e5db9504f67defd5c7408a00bade679a50d44", "nginx@sha256:eb3320e2f9ca409b7c0aa71aea3cf7ce7d018f03a372564dbdb023646958770b": "sha256:e445ab08b2be8b178655b714f89e5db9504f67defd5c7408a00bade679a50d44" } } }
- 我们发现这里面跟我们使用
docker images
打印出来的容器信息一致
[root@bogon overlay2]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE b3log/solo latest 3ad1297684d5 6 days ago 150MB nginx latest e445ab08b2be 3 weeks ago 126MB mysql 5.7 f6509bac4980 3 weeks ago 373MB [root@bogon overlay2]#
docker images
打印出来的IMAGE ID
是完整ID
的缩写
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于