以下记录在使用 Docker 过程中遇到的常用命令,方便查询。
系统
- 停止所有容器,清理所有没用的网格、缓存、未标记的镜像
docker system prune
镜像(Images)
-
列出所有的镜像
docker images
-
搜索镜像(从官方镜像和所有个人公共镜像)
docker search <NAME>
-
删除镜像,通过镜像的id来指定删除谁
docker rmi <image_id>
-
删除untagged images没有标签的镜像,也就是那些id为
的镜像
docker image prune
-
删除全部镜像
docker rmi $(docker images -q)
-
构建镜像
docker build -t [project/repo:tag] ./
-
推送镜像
docker push [project/repo:tag]
-
拉取镜像
docker pull [OPTIONS] <NAME[:TAG]>
-
将一个容器固化为一个新的镜像
docker commit <container> [repo:tag]
容器(container)
-
查看容器
当前正在运行中容器:docker ps
已经停止的所有容器:docker ps -a
显示最新的一个容器(包括已停止的):docker ps -l
-
从镜像启动容器
docker run [OPTIONS] <image> [COMMAND] [ARG...]
OPTIONS说明:
- -d: 后台运行容器,并返回容器ID;
- -i: 以交互模式运行容器,通常与 -t 同时使用;
- -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
例子:
操作运行的redis容器:docker run -it redis:3.2 redis-cli -h 172.17.0.1
-
开启/停止/重启 容器
docker start <container_id>
docker stop <container_id>
docker restart <container_id>
-
连接到正在运行中的容器
docker attach [OPTIONS] <container_id>
-
在运行的容器中执行命令
docker exec [OPTIONS] <container> <command> [ARG...]
-
停止所有的容器,这样才能够删除相关的镜像
docker stop $(docker ps -a -q)
-
删除指定容器
docker rm <container_id>
-
删除所有退出的容器
docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }')
-
删除所有容器
docker rm $(docker ps -aq)
-
查看容器的相关信息
docker inspect <container_id>
-
显示指定容器的IP
docker inspect --format '{{ .NetworkSettings.IPAddress }}' <container_id>
-
查看容器中正在运行的进程
docker top <container_id/container_name>
0 条评论
来做第一个留言的人吧!