帮助启动类命令
- · 启动docker: systemctl start docker
- · 停止docker: systemctl stop docker
- · 重启docker: systemctl restart docker
- · 查看docker状态: systemctl status docker
- · 开机启动: systemctl enable docker
- · 查看docker概要信息: docker info
- 查看docker总体帮助文档: docker --help
- 查看docker命令帮助文档: docker 具体命令 --help
镜像命令
查看容器镜像
- docker images/docker image ls /docker image list
- 列表选项说明
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签版本号
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
- options 筛选
- -a: 列出本地所有的镜像(含历史映像层)
- -1: 只显示镜像ID
搜索容器镜像
- docker search 镜像名
- 列表选项说明
- OPTIONS说明:
- --limit : 只列出N个镜像,默认25个
- docker search --limit 5 redis
拉取镜像
- docker pull 镜像名
- docker pull 镜像名字[:TAG]
- docker pull 镜像名字
- 没有TAG就是最新版(docker redis:latest)
- ·docker system df 查看镜像/容器/数据卷所占的空间
删除镜像
- 单个:docker image rmi -f
- 多个:docker image rmi -f <IMAGE ID 1> <IMAGE ID 2>
- 全部:· docker rmi -f $(docker images -qa)
注意:-f是强制删除不考虑镜像是否运行;rm是删除容器,而rmi是删除镜像。
容器命令
- 启动容器
docker run -itd --name redis-test -p 6379:6379 redis
OPTIONS说明:
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
也即启动交互式容器(前台有伪终端,等待交互);
-d:后台运行容器并返回容器ID,也即启动守护式容器(后台运行);
-P: 随机端口映射,大写P
-p::指定端口映射,小写p
- 列出容器
docker ps [OPTIONS]
OPTIONS说明(常用):
-a :列出当前所有正在运行的容器+历史上运行过的
-l :显示最近创建的容器。
-n:显示最近n个创建的容器。
-q :静默模式,只显示容器编号。
- 退出容器
run进去容器,exit退出,容器停止
run进去容器,ctrl+p+q退出,容器不停止
- 启动已停止的容器
docker start 容器ID或者容器名
- 重启容器
docker restart 容器ID或者容器名
- 停止容器
docker stop 容器ID或者容器名
- 强行停止容器
·docker kill 容器ID或容器名
- 删除已停止的容器
·docker rm 容器ID
一次性删除多个容器实例:
docker rm <container_id_1> <container_id_2> ... <container_id_n>
docker rm -f $(docker ps -a -q)
用于删除所有Docker容器,包括当前正在运行的容器。"docker"是用于处理Docker的命令行工具。
"ps"是一个子命令,用于列出当前系统上的所有Docker容器。
"-a"是一个选项,表示列出所有容器(包括已停止的容器)。
"-q"是一个选项,表示只输出容器ID,而不输出其它信息。
"|"是管道符,将前面命令的输出作为后面命令的输入。
"xargs"命令是用来将标准输入转换成命令行参数的,它会将管道符左边命令的输出作为参数传递给右边的命令。
"docker rm"是用于删除Docker容器的命令。在这个命令中,由"xargs"传递过来的参数是要删除的容器ID。
因此,当您运行此命令时,它将从所有Docker容器的ID列表中构建一个命令,然后批量删除这些容器。与使用"docker rm -f $(docker ps -a -q)"命令相比,此命令更加可控,可以避免意外地删除正在运行的容器。
"docker"是用于处理Docker的命令行工具。
"rm"是用于删除Docker容器的子命令。
"-f"是一个选项,用于强制删除容器,即使它们正在运行。
"$(docker ps -a -q)"是一个命令替换,它返回所有Docker容器的ID,无论它们是否正在运行。
docker ps -a -q | xargs docker rm
也用于删除所有Docker容器,包括当前正在运行的容器。
"docker"是用于处理Docker的命令行工具。
"ps"是一个子命令,用于列出当前系统上的所有Docker容器。
"-a"是一个选项,表示列出所有容器(包括已停止的容器)。
"-q"是一个选项,表示只输出容器ID,而不输出其它信息。
"|"是管道符,将前面命令的输出作为后面命令的输入。
"xargs"命令是用来将标准输入转换成命令行参数的,它会将管道符左边命令的输出作为参数传递给右边的命令。
"docker rm"是用于删除Docker容器的命令。在这个命令中,由"xargs"传递过来的参数是要删除的容器ID。
因此,当您运行此命令时,它将从所有Docker容器的ID列表中构建一个命令,然后批量删除这些容器。与使用"docker rm -f $(docker ps -a -q)"命令相比,此命令更加可控,可以避免意外地删除正在运行的容器。
- 查看容器内运行的进程
·docker top 容器ID
- · 查看容器日志
·docker logs 容器ID
- · 查看容器内部细节
·docker inspect 容器ID
- 进入容器
docker attach
(docker attach 1e560fca3906 )
docker exec:推荐大家使用 docker exec 命令,因为此命令会退出容器终端,但不会导致容器的停止。
docker exec -it 243c32535da7 /bin/bash
- 导出容器
docker export 1e560fca3906 > ubuntu.tar
- 导入容器快照
cat docker/ubuntu.tar | docker import - test/ubuntu:v1
仓库管理
官方docker仓库:https://hub.docker.com/
- 登录:docker login
- 退出:docker logout
- 查找官方仓库中的镜像:docker search 镜像名【:版本号】(可选)
- 推送镜像
username = 你的docker的账号名
对于存在的镜像新建一个镜像标签
1、docker tag ubuntu:latest username/ubuntu:2023001
推送到难道docker仓库
2、docker push username/ubuntu202301
标签:容器,命令,常用命令,镜像,docker,Docker,ID
From: https://blog.51cto.com/u_16084527/6471992