docker常用命令示例

来源:互联网 发布:华为加班 知乎 编辑:程序博客网 时间:2024/05/26 08:41

拉取镜像

docker pull hub.c.163.com/library/mysql:5.7

查看本地镜像

docker images

查看曾经运行过的容器

docker ps -a 

查看正在运行的容器

docker ps 

删除一个不处于运行中的容器

docker rm mysql-master 

强制删除运行中的容器

docker rm -f mysql-master 

启动MySQL容器

docker run --name mysql-master -e MYSQL_ROOT_PASSWORD='123456' -d hub.c.163.com/library/mysql:5.7

用镜像ID来启动容器

docker run --name mysql-master -e MYSQL_ROOT_PASSWORD='123456' -d 573ca163b053

以交互模式在mysql-master中执行bash命令

docker exec -it mysql-master bash 

启动MySQL容器并挂载宿主机共享数据卷到容器

docker run \ --name mysql-master2 \ -e MYSQL_ROOT_PASSWORD='123456' \ -v /root/mysql-master/datadir/:/var/lib/mysql/  \ -v /root/mysql-master/cnfdir/:/etc/mysql/conf.d/ \ -d 573ca163b053

启动另一个容器并链接到上一个容器

docker run \ --name mysql-slave1 \ -e MYSQL_ROOT_PASSWORD='123456' \ -v /root/mysql-slave1/datadir/:/var/lib/mysql/  \ -v /root/mysql-slave1/cnfdir/:/etc/mysql/conf.d/ \ —link mysql-master2:master \ -d 573ca163b053

停止一个容器

docker stop mysql-master

启动原来运行过的容器

docker start mysql-master

重启现在正在运行的容器

docker restart mysql-master

提交容器为镜像:

docker commit 容器名/ID 镜像名:版本

导出容器

docker export 容器名/ID > /home/xxx.tar

导入容器

docker import 压缩文件名.tar [REPOSITORY[:TAG]]

可以打标签

保存镜像为压缩文件

docker save 镜像ID > 压缩文件名.tar

导入别人分享的镜像文件

docker load < 压缩文件名.tar

导出 export 与 保存 save 的区别
a.export导出的镜像文件大小小于save保存的镜像
b.export导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作(docker tag );而save保存(load加载)的镜像,没有丢失镜像的历史,可以回滚到之前的层(layer)。(查看方式:docker images –tree)

从容器中拷贝内容到宿主机

docker cp CONTAINER:PATH HOSTDIR
原创粉丝点击