容器管理
检查容器启动日志
docker logs 容器id/容器名称
启动一个已经被终止的容器
docker start 容器id/容器名称
以交互方式启动一个已经被终止的容器
docker start -i 容器id/容器名称
终止容器
docker stop 容器id/容器名称
重启容器
docker restart 容器id/容器名称
导出容器
docker export 7691a814370e > ubuntu.tar
导入容器为镜像
cat ubuntu.tar | sudo docker import - test/ubuntu:v1.0
用户既可以使用 docker load 来导入镜像存储文件到本地镜像库,也可以使用 docker import 来导入一个容器快照到本地镜像库。这两者的区别在于容器快照文件将丢弃所有的历史记录和元数据信息(即仅保存容器当时的快照状态),而镜像存储文件将保存完整记录,体积也要大。此外,从容器快照文件导入时可以重新指定标签等元数据信息。
数据共享
创建一个数据卷
docker run -ti -v /webapp --name data ubuntu /bin/bash
在主机和容器间共享数据,即将主机的某个目录来作为容器的数据卷
docker run -ti -v /root/data:/opt/data ubuntu /bin/bash
ps 目录必须用绝对路径
在多个容器间共享数据
docker run -ti -v /dbdata --name dbdata training/postgres
docker run -ti --volumes-from dbdata --name db1 training/postgres /bin/bash
docker run -ti --volumes-from dbdata --name db2 training/postgres /bin/bash
docker run -ti --volumes-from db1 --name db3 training/postgres /bin/bash #从已经挂载了数据卷的容器来挂载数据卷
其他技巧
使用镜像执行命令时,不创建容器
docker run b15 /bin/echo 'Hello world' --rm=true
删除所有容器
docker rm `docker ps -a -q`
通过容器创建镜像
docker commit -m "Added json gem" -a "Docker Newbee" 0b26 ouruser/sinatra:v2
-m “” 修改备注
-a “” 作者信息
0b26 容器的id
ouruser/sinatra:v2 仓库名:tag
导出镜像
docker save -o ubuntu_14.04.tar ubuntu:14.04
导入镜像
docker load < ubuntu_14.04.tar
转载请注明:大后端 » docker 使用精要