Docker常用命令

发布于:2025-08-16 ⋅ 阅读:(23) ⋅ 点赞:(0)

一、启动

Linux

# 启动 Docker 服务
sudo systemctl start docker
# 设置 Docker 开机自启
sudo systemctl enable docker
# 检查 Docker 是否运行
sudo systemctl status docker

Windows

  • 启动 Docker Desktop

二、镜像

镜像命令一般分两部分组成:repository:tag。比如 nginx:1.28.0,表示名称加版本。在没有指定 tag 时,默认是 latest,代表最新版本的镜像。

所有命令后面加上 --help 可查看帮助

1.检索

# 在 Docker Hub 查找镜像
docker search [OPTIONS] TERM

2.下载

# 从远程仓库下载镜像
docker pull [OPTIONS] NAME[:TAG|@DIGEST]

3.列表

# 别名:docker image ls, docker image list
docker images

4.删除

# 删除一个或多个镜像
docker rmi [OPTIONS] IMAGE [IMAGE...]

选项 [OPTIONS]:

# -f, --force: 强制删除该镜像

三、容器

1.运行

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

选项 [OPTIONS]:

# -d, --detach: 后台运行容器
# -e, --env: 设置环境变量
# --name: 给容器分配名称,默认分配随机名称
# --network: 将容器连接到指定网络
# -p, --publish [HOST_PORT]:[CONTAINER_PORT]: 将容器的端口发布到主机上
# --restart: 重启策略,默认: no, 自动重启: always
# -v, --volume [HOST_PATH]:[CONTAINER_PATH]: 挂载一个数据卷

端口示例 [-p]:

# 简单端口映射: docker run -p 8080:80 nginx
# 指定IP地址: docker run -p 192.168.0.1:8080:80 nginx
# 随机主机端口: docker run -p 80 nginx
# 映射多个端口: docker run -p 8080:80 -p 8443:443 nginx

数据卷示例 [-v]:

# 目录挂载: docker run -v /主机目录:/容器目录 镜像名
# 数据卷挂载: docker run -v 卷名:/容器目录 镜像名

2.查看

docker ps [OPTIONS]

选项 [OPTIONS]:

# -a, --all: 显示所有容器,默认显示运行中的容器
# -q, --quiet: 只显示容器IDs

3.停止

docker stop [OPTIONS] CONTAINER [CONTAINER...]

4.启动

docker start [OPTIONS] CONTAINER [CONTAINER...]

5.重启

docker restart [OPTIONS] CONTAINER [CONTAINER...]

6.状态

docker stats [OPTIONS] [CONTAINER...]

7.日志

docker logs [OPTIONS] CONTAINER

8.进入

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

9.删除

docker rm [OPTIONS] CONTAINER

选项 [OPTIONS]:

# -f, --force: 强制删除运行中的容器

四、分享

1.提交

# 描述:从容器的更改创建新镜像
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

选项 [OPTIONS]:

# -m, --message: 提交信息

2.保存

docker save [OPTIONS] IMAGE [IMAGE...]

3.加载

docker load [OPTIONS]

4.登录

docker login [OPTIONS] [SERVER]

5.命名

# 创建一个目标镜像标签,使其指向源镜像
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]

6.推送

# 上传镜像到远程仓库
docker push [OPTIONS] NAME[:TAG]

五、存储

1.列表

docker volume ls [OPTIONS]

2.创建

docker volume create [OPTIONS] [VOLUME]

3.详情

docker volume inspect [OPTIONS] VOLUME [VOLUME...]

4.删除

docker volume rm [OPTIONS] VOLUME [VOLUME...]

选项 [OPTIONS]:

# -f, --force: 强制删除运行中的数据卷

六、网络

1.列表

docker network ls

2.创建

docker network create

3.详情

docker network inspect

4.删除

docker network rm

七、Compose

compose通过一个配置文件来定义和编排多个容器的应用,详情参考官方文档。下图是文件可包含的顶级元素:
在这里插入图片描述

1.创建并启动

docker compose up [OPTIONS] [SERVICE...]

2.停止并删除

docker compose down [OPTIONS] [SERVICE...]

3.启动

docker compose start [SERVICE...]

4.停止

docker compose stop [OPTIONS] [SERVICE...]

八、Dockerfile

1.常见指令:

FROM: 指定镜像基础环境
RUN: 运行自定义命令
CMD: 容器启动命令或参数
LABEL: 自定义标签
EXPOSE: 指定暴露端口
ENV: 环境变量
COPY: 复制文件到镜像
ENTRYPOINT: 容器固定启动命令
VOLUME: 数据卷

更多详情参考官方文档

2.build 命令

# 构建镜像
# PATH: 目录层级,例如 . 或者 ./ 表示当前目录
docker build [OPTIONS] PATH | URL | -

选项 [OPTIONS]:

# -f, --file: Dockerfile的名称(默认: "PATH/Dockerfile")
# -t, --tag: 镜像名(名称和可选的标签)

网站公告

今日签到

点亮在社区的每一天
去签到