all

Docker常用命令

原文链接:https://blog.csdn.net/Python_0011/article/details/140313812

原文链接:https://blog.csdn.net/Python_paipai/article/details/144389754

[TOC]

1、Docker运行

要在Docker中运行容器,可以使用以下命令:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
• docker run:运行容器的命令。

• [OPTIONS]:可选参数,用于配置容器的各种选项,如端口映射、容器名称等。

• IMAGE:要运行的镜像名称或ID。

• [COMMAND] [ARG...]:可选的命令和参数,用于在容器内执行特定的命令。

2、Docker构建

要构建自己的Docker镜像,可以使用以下命令:

docker build [OPTIONS] PATH | URL | -
• docker build:构建镜像的命令。

• [OPTIONS]:可选参数,用于配置构建过程,如镜像标签、构建上下文路径等。

• PATH | URL | -:Dockerfile所在的路径、URL或者使用标准输入作为Dockerfile。

3、Docker pull

要从Docker仓库中拉取现有的镜像,可以使用以下命令:

docker pull [OPTIONS] NAME[:TAG|@DIGEST]
• docker pull:拉取镜像的命令。

• [OPTIONS]:可选参数,用于配置拉取过程,如认证信息等。

• NAME[:TAG|@DIGEST]:要拉取的镜像名称、标签或摘要。

4、Docker push

要将本地的镜像推送到Docker仓库,可以使用以下命令:

docker push [OPTIONS] NAME[:TAG]
1
• docker push:推送镜像的命令。

• [OPTIONS]:可选参数,用于配置推送过程,如认证信息等。

• NAME[:TAG]:要推送的镜像名称和标签。

5、Docker images

要列出本地所有的镜像,可以使用以下命令:

docker images [OPTIONS] [REPOSITORY[:TAG]]
• docker images:列出镜像的命令。

• [OPTIONS]:可选参数,用于配置输出结果的格式等。

• [REPOSITORY[:TAG]]:可选的镜像名称和标签,用于过滤输出结果。

6、Docker ps

要列出正在运行的容器,可以使用以下命令:

docker ps [OPTIONS]
• docker ps:列出容器的命令。

• [OPTIONS]:可选参数,用于配置输出结果的格式和过滤条件。

-a参数:列出所有容器,包括非运行状态。

7、Docker stop

要停止正在运行的容器,可以使用以下命令:

docker stop [OPTIONS] CONTAINER [CONTAINER...]
• docker stop:停止容器的命令。

• [OPTIONS]:可选参数,用于配置停止过程,如超时时间等。

• CONTAINER [CONTAINER...]:要停止的容器名称或ID。

8、Docker start

要启动已停止的容器,可以使用以下命令:

docker start [OPTIONS] CONTAINER [CONTAINER...]
• docker start:启动容器的命令。

• [OPTIONS]:可选参数,用于配置启动过程,如守护模式等。

• CONTAINER [CONTAINER...]:要启动的容器名称或ID。

9、Docker restart

要重启正在运行的容器,可以使用以下命令:

docker restart [OPTIONS] CONTAINER [CONTAINER...]
• docker restart:重启容器的命令。

• [OPTIONS]:可选参数,用于配置重启过程,如超时时间等。

• CONTAINER [CONTAINER...]:要重启的容器名称或ID。

10、Docker kill

要强制终止正在运行的容器,可以使用以下命令:

docker kill [OPTIONS] CONTAINER [CONTAINER...]
• docker kill:终止容器的命令。

• [OPTIONS]:可选参数,用于配置终止过程,如信号等。

• CONTAINER [CONTAINER...]:要终止的容器名称或ID。

11、Docker rm/docker rmi

要删除已停止的容器或镜像,可以使用以下命令:

docker rm [OPTIONS] CONTAINER [CONTAINER...]   docker rmi [OPTIONS] IMAGE [IMAGE...]
• docker rm:删除容器的命令。 #删除多个 其镜像ID或镜像用用空格隔开即可

• docker rmi:删除镜像的命令。

• [OPTIONS]:可选参数,用于配置删除过程,如强制删除等。

• CONTAINER [CONTAINER...]:要删除的容器名称或ID。

• IMAGE [IMAGE...]:要删除的镜像名称或ID。

12、Docker exec

要在运行中的容器内执行命令,可以使用以下命令:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
• docker exec:在容器内执行命令的命令。

• [OPTIONS]:可选参数,用于配置执行过程,如进入交互模式等。

• CONTAINER:要执行命令的容器名称或ID。

• COMMAND [ARG...]:要在容器内执行的命令及其参数。

13、Docker logs

要查看容器的日志输出,可以使用以下命令:

docker logs [OPTIONS] CONTAINER
• docker logs:查看容器日志的命令。

• [OPTIONS]:可选参数,用于配置输出结果,如时间戳等。

• CONTAINER:要查看日志的容器名称或ID。

14、Docker inspect

要获取容器或镜像的详细信息,可以使用以下命令:

docker inspect [OPTIONS] NAME|ID [NAME|ID...]
• docker inspect:获取详细信息的命令。

• [OPTIONS]:可选参数,用于配置输出结果的格式等。

• NAME|ID [NAME|ID...]:要获取信息的容器或镜像的名称或ID。

15、Docker cp

要在容器和主机之间复制文件或目录,可以使用以下命令:

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH   docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
• docker cp:复制文件或目录的命令。

• [OPTIONS]:可选参数,用于配置复制过程,如权限等。

• CONTAINER:SRC_PATH:源路径,其中CONTAINER是容器名称或ID。

• DEST_PATH:目标路径,其中DEST_PATH是主机路径。

• SRC_PATH|-:源路径,其中-表示从标准输入读取。

16、Docker system prune

要清理不再使用的镜像、容器和其他资源,可以使用以下命令:

docker system prune [OPTIONS]
• docker system prune:清理资源的命令。

• [OPTIONS]:可选参数,用于配置清理过程,如强制删除等。

17、Docker network

Docker网络允许容器之间进行通信和连接到外部网络。以下是一些与Docker网络相关的常用命令:

• docker network ls:列出所有的Docker网络。

• docker network create:创建一个新的Docker网络。

• docker network connect:将容器连接到指定的Docker网络。

• docker network disconnect:将容器从指定的Docker网络断开连接。

18、Docker volume

Docker卷用于在容器和主机之间持久化存储数据。以下是一些与Docker卷相关的常用命令:

• docker volume ls:列出所有的Docker卷。

• docker volume create:创建一个新的Docker卷。

• docker volume inspect:获取Docker卷的详细信息。

• docker volume rm:删除指定的Docker卷。

19、Docker-compose

Docker-compose是一个用于定义和运行多个容器应用程序的工具。它使用YAML文件来配置应用程序的服务、网络和卷等。以下是一些与Docker-compose相关的常用命令:

• docker-compose up:构建并启动Docker-compose定义的所有服务。

• docker-compose down:停止并删除Docker-compose定义的所有服务。

• docker-compose build:构建Docker-compose定义的所有服务的镜像。

• docker-compose logs:查看Docker-compose定义的所有服务的日志。

20、Docker swarm

Docker swarm是Docker的原生集群管理和编排工具,用于在多个Docker主机上运行和管理应用程序。以下是一些与Docker swarm相关的常用命令:

• docker swarm init:初始化一个新的Docker swarm集群。

• docker swarm join:将节点加入到Docker swarm集群。

• docker node ls:列出Docker swarm集群中的所有节点。

• docker service:管理在Docker swarm集群中运行的服务。

21、Dockerfile

Dockerfile是用于定义Docker镜像构建过程的文本文件。它包含一系列的指令和配置,用于指导Docker引擎在构建过程中执行特定的操作。以下是一些与Dockerfile相关的常用命令:

• FROM:指定基础镜像。

• RUN:在容器内执行命令。

• COPY:将文件或目录从主机复制到容器内。

• ADD:将文件或目录从主机复制到容器内,并支持URL和解压缩操作。

• WORKDIR:设置工作目录。

• EXPOSE:声明容器运行时监听的端口。

• CMD:指定容器启动时要执行的命令。

这些命令可以在Dockerfile中按照特定的顺序组合使用,以定义和构建自定义的Docker镜像。

22、Docker登录和认证

要登录到Docker仓库或私有镜像仓库,可以使用以下命令:

• docker login:登录到Docker仓库。

• docker logout:退出登录。

登录后可以使用docker pull和docker push命令来拉取和推送镜像。

23、Docker容器日志管理

除了使用docker logs命令查看容器日志外,还可以使用以下命令对容器日志进行管理:

• docker logs --tail:只显示最后几行的日志。

• docker logs --follow:实时跟踪容器的日志输出。

• docker logs --since:只显示特定时间之后的日志。

• docker logs --until:只显示特定时间之前的日志。

24、Docker 运维命令

1.启动Docker

sudo systemctl start docker

2.docker开机自启

sudo systemctl enable docker

3.查看docker日志

journalctl -u docker.service or less /var/log/messages | grep Docker

(journalctl是一个用于查询和操作由systemd进程管理的日志的工具)

4.查看服务运行状态

systemctl status docker.service

25、docker监控相关

1.查看容器的资源使用率

docker stats CONTAINER_ID

2.限制cpu和内存资源

docker run --cpus=1 -m=2g --name=nginx -d nginx

3.查看磁盘使用大小

docker system df

4.查看每个 image、container 详细大小

docker system df -v

5.查看dir路径

docker info|grep -i dir