1、 #从官网拉取镜像
docker pull <镜像名:tag>
如:docker pull centos(拉取centos的镜像到本机)
2、#搜索在线可用镜像名
docker search <镜像名>
如:docker search centos( 在线查找centos的镜像)
3、#查询所有的镜像,默认是最近创建的排在最上
docker images
4、#查看正在运行的容器
docker ps
5、#删除单个镜像
docker rmi -f <镜像ID>
6、#启动、停止操作
docker stop <容器名or ID> #停止某个容器
docker start <容器名or ID> #启动某个容器
docker kill <容器名or ID> #杀掉某个容器
docker restart <容器名or ID> #重启某个容器
7、#查询某个容器的所有操作记录。
docker logs {容器ID|容器名称}
8、# 制作镜像 使用以下命令,根据某个“容器 ID”来创建一个新的“镜像”:
docker commit 93639a83a38e wsl/javaweb:0.1
9、#启动一个容器
docker run -d -p 58080:8080 --name javaweb wsl/javaweb:0.1 /root/run.sh
解释:-d:表示以“守护模式”执行/root/run.sh脚本
-p:表示宿主机与容器的端口映射,此时将容器内部的 8080 端口映射为宿主机的 58080 端口,这样就向外界暴露了 58080 端口,可通过 Docker 网桥来访问容器内部的 8080 端口了。
-name:为容器命名
10、#启动docker服务的命令
很简单:
service docker start(centos6)
systemctl start docker (centos7)
11、#导出、导入镜像:
导出:
docker save 镜像id>文件名.压缩包 eg: docker save 1723fe>web.rar
导入:
docker load<文件名.压缩包 eg: docker load<web.rar
12.清理docker空间:
查看Docker的磁盘使用情况:
docker system df
清理磁盘,删除关闭的容器、无用的数据卷和网络,以及无tag的镜像:
docker system prune
将没有容器使用Docker镜像都删掉:
docker system prune -a
统计linux中文件或目录所占磁盘空间的大小:
du -h --max-depth=1du
删除所有关闭的容器:
docker ps -a | grep Exit | cut -d ' ' -f 1 | xargs docker rm
删除所有无tag的镜像:
docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
删除所有无用的Volume:
docker volume rm $(docker volume ls -qf dangling=true)
Docker的所有相关文件,包括镜像、容器等都保存在 /var/lib/docker/ 目录:
du -hs /var/lib/docker/
总结:
1.docker images //命令用来查看docker中所包含的镜像信息
2.docker ps -a //命令用来查看docker中所包含所有容器信息(运行状态/不运行状态)
3.docker ps //命令用来查看docker中所有正在运行的容器信息
4.docker build -it 镜像name:镜像tag Dockerfile所在路径 //这是通过Dockerfile来构建一个镜像
5.docker run -d -p 宿主机端口:容器端口 --name 容器名称 image //这是通过一个image来构建一个container
6.docker rmi 镜像名称:镜像tag/镜像Id //通过一个镜像名称或者镜像Id来删除一个镜像
7.docker rm -f 容器名称/容器Id //通过容器名称/容器Id来删除一个容器
8.docker pull 镜像name:镜像tag //从仓库中拉取一个镜像
9.docker push 镜像name:镜像tag //往仓库中推送一个镜像