Docker 常用命令总结
安装
Docker的安装在1.12之后需要Centos7才行
yum update all -y
curl -fsSL https://get.docker.com/ | sh
启动、停止
service docker start
service docker stop
查看日志
journalctl -fu docker.service
列出可用镜像
docker images
[root@ZJ2153 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
xiaocan_ghost_blog latest 37e318a865ed 5 days ago 448MB
gitlab/gitlab-ce latest ab6138b2b7fe 9 days ago 1.31GB
centos 6.9 573de66f263e 4 months ago 195MB
[root@ZJ2153 ~]#
删除镜像
docker rmi [Image ID]
从远程拉取镜像
docker pull [Repository name | Repository url]
docker pull registry.cn-hangzhou.aliyuncs.com/ghoulich-centos/centos-6.9-basic
docker pull centos 6.9
创建容器
docker run --help
以后台运行的方式创建容器
需要注意的是容器必须要有在前台运行的程序,才能以后台运行的方式创建
docker run -d [Image id | Repository name | Repository url]
docker run -d 32c511dad3c2
创建容器,映射本地路径到容器中
docker run -d --volume [主机目录]:[容器目录] [Image id | Repository name | Repository url]
docker run -d --volume /home/data/blog_xiaocan:/data/blog 32c511dad3c2
创建容器,映射容器的端口到主机的IP、端口上
docker run -d -p <主机IP>:[主机端口]:[容器端口] [Image id | Repository name | Repository url]
docker run -d -p 127.0.0.1:2368:2368 2fa54498b8c5
docker run -d -p 7133:2298 2fa54498b8c5
对容器命名
docker run -d --name=[容器名称] [Image id | Repository name | Repository url]
在前台方式以bash启动容器
docker run -it [Image id | Repository name | Repository url] bash
创建后台运行的程序,通过bash执行指定命令
docker run -d -v /home/data/blog_xiaocan:/data/blog -p 127.0.0.1:2368:2368 --name=xiaocan_blog 37e318a865ed /bin/sh -c 'cd /data/blog && npm start --production'
当容器退出的时候,自动重启
docker run --restart always [Image id | Repository name | Repository url]
列出容器、启动、停止、重启、删除
List
docker ps
docker ps -a
Start
docker start [容器ID | 容器名称]
Stop
docker stop [容器ID | 容器名称]
Restart
docker restart [容器ID | 容器名称]
Delete
docker rm [容器ID | 容器名称]
附加到当前容器
docker attach [容器ID | 容器名称]
docker attach 8dc
检查容器日志
docker logs -f -t --since="2017-08-01" --tail=10 5bfa13c5d562
将当前容器导出为镜像
这是一个偷懒的办法,对于懒得写Dockfile的人来说,直接编辑好,然后导出比较简单省事,但是并不方便之后对镜像做其他配置
导出为image
docker commit 8dc314191abe xiaocan_ghost_blog
查看导出的image
[root@ZJ2153 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
xiaocan_ghost_blog latest 37e318a865ed 5 days ago 448MB
gitlab/gitlab-ce latest ab6138b2b7fe 10 days ago 1.31GB
centos 6.9 573de66f263e 4 months ago 195MB
或者,直接保存Container
docker export 8dc314191abe > blog.tar
然后在其他机器上导入
docker import blog.tar
又或者,使用Docker save
docker save busybox-1 > /home/save.tar
然后使用load命令导入
docker load < /home/save.tar
之后启动即可