常用命令:
代码语言:javascript复制$ docker images -f dangling=true #显示虚悬镜像
$ docker image prune #删除虚悬镜像
$ docker images -a #显示所有镜像(包括中间层镜像)
$ docker images --format "{{.ID}}: {{.Repository}}" #指定格式列出镜像
$ docker diff webserver #查看容器的具体改动
$ docker system df #查看镜像、容器、数据卷所占用的空间
$ docker history nginx:v2 #查看镜像内的历史记录
$ docker build -t nginx:v3 . #使用Dockerfile保存镜像
$ docker image rm ubuntu #删除镜像
$ docker run -t -i ubuntu:14.04 /bin/bash #交互式启动容器
$ docker run -dit ubuntu #后台运行启动
$ docker exec -i 69d1 bash #进入容器
$ docker export 7691a814370e > ubuntu.tar #导出容器
$ cat ubuntu.tar | docker import - test/ubuntu:v1.0 #导入容器快照
$ docker container ls -a #列出所有容易(包括终止状态的容器)
$ docker container rm trusting_newton #删除一个处于终止状态的容器
$ docker container prune #清理所有处于终止状态的容器
$ docker pull centos #下载官方 centos 镜像到本地
$ docker tag ubuntu:17.10 username/ubuntu:17.10 #标记镜像名称
$ docker push username/ubuntu:17.10 #将自己的镜像推送到 Docker Hub
$ docker search username #查新镜像
$ curl 127.0.0.1:5000/v2/_catalog #查看私有仓库镜像
数据管理
代码语言:javascript复制$ docker volume create my-vol #新建一个数据卷
$ docker volume ls #查看所有的数据卷
$ docker volume inspect my-vol #查看指定数据卷的信息
#挂载数据卷
$ docker volume rm my-vol #删除数据卷
$ docker volume prune #清楚无主的数据卷
$ docker inspect web #查看容器信息
注意事项
如果你不想使用 127.0.0.1:5000 作为仓库地址,比如想让本网段的其他主机也能把镜像推送
到私有仓库。你就得把例如 192.168.199.100:5000 这样的内网地址作为私有仓库地址,这时
你会发现无法成功推送镜像。
这是因为 Docker 默认不允许非 HTTPS 方式推送镜像。我们可以通过 Docker 配置来取消这
个限制,或者配置能够通过 HTTPS 访问的私有仓库。
请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存
在请新建该文件)
代码语言:javascript复制{ "registry-mirror": [ "https://registry.docker-cn.com" ],"insecure-registries": [ "192.168.199.100:5000" ] }