openEuler、 CentOS、Ubuntu等 Linux 系统中,Docker 常用命令总结

在 openEuler、 CentOS、Ubuntu等 Linux 系统中,Docker 常用命令可按功能分为 容器管理、镜像管理、网络管理、数据卷管理 等类别,以下是高频使用的命令总结:

一、Docker 服务基础操作

python 复制代码
# 启动 Docker 服务
systemctl start docker

# 停止 Docker 服务
systemctl stop docker

# 重启 Docker 服务
systemctl restart docker

# 查看 Docker 服务状态
systemctl status docker

# 设置 Docker 开机自启动
systemctl enable docker

# 关闭 Docker 开机自启动
systemctl disable docker

# 查看 Docker 版本信息
docker version
docker info  # 详细信息(包括镜像、容器数量等)

二、容器管理

1. 查看容器
python 复制代码
# 查看正在运行的容器
docker ps

# 查看所有容器(包括已停止的)
docker ps -a

# 查看容器简洁信息(仅 ID 和名称)
docker ps -aq
2. 创建并启动容器
python 复制代码
# 基于镜像创建并启动容器(前台运行,退出终端则容器停止)
docker run [选项] 镜像名 [容器内命令]

# 常用选项:
# -d:后台运行(守护模式)
# -p 主机端口:容器端口:端口映射(如 -p 8080:80)
# -v 主机目录:容器目录:挂载数据卷(持久化数据)
# --name 容器名:指定容器名称
# --restart=always:容器随 Docker 服务自启动
# -it:交互式运行(进入容器终端)

# 示例:后台启动 Nginx,映射 80 端口,命名为 my-nginx
docker run -d -p 80:80 --name my-nginx nginx

# 示例:交互式启动 CentOS 容器(进入终端)
docker run -it --name my-centos centos /bin/bash
3. 启动 / 停止 / 重启容器
python 复制代码
# 启动已存在的容器
docker start 容器ID/名称

# 停止运行中的容器
docker stop 容器ID/名称

# 强制停止容器(类似断电,不推荐)
docker kill 容器ID/名称

# 重启容器
docker restart 容器ID/名称
4. 进入容器
python 复制代码
# 进入正在运行的容器(交互式终端,退出后容器继续运行)
docker exec -it 容器ID/名称 /bin/bash  # 适用于大多数 Linux 容器
docker exec -it 容器ID/名称 sh          # 若容器无 bash,用 sh

# 示例:进入 my-nginx 容器
docker exec -it my-nginx /bin/bash
5. 删除容器
python 复制代码
# 删除已停止的容器
docker rm 容器ID/名称

# 强制删除正在运行的容器(会先停止)
docker rm -f 容器ID/名称

# 删除所有已停止的容器
docker rm $(docker ps -aq)
6. 容器日志与信息
python 复制代码
# 查看容器日志(实时输出,按 Ctrl+C 退出)
docker logs -f 容器ID/名称

# 查看容器详细信息(配置、网络等)
docker inspect 容器ID/名称

# 查看容器资源占用(CPU、内存等)
docker stats 容器ID/名称

三、镜像管理

1. 查看镜像
python 复制代码
# 查看本地所有镜像
docker images
docker image ls

# 查看镜像详细信息
docker inspect 镜像ID/名称:标签
2. 拉取镜像
python 复制代码
# 从镜像仓库拉取镜像(默认 Docker Hub)
docker pull 镜像名:标签  # 标签可选,默认 latest

# 示例:拉取 Nginx 最新版镜像
docker pull nginx

# 示例:拉取指定版本的 CentOS 镜像
docker pull centos:7
3. 构建镜像
python 复制代码
# 基于 Dockerfile 构建镜像(-t 指定名称和标签)
docker build -t 镜像名:标签 构建目录

# 示例:在当前目录构建名为 my-app:v1 的镜像
docker build -t my-app:v1 .
4. 删除镜像
python 复制代码
# 删除本地镜像(需先删除依赖该镜像的容器)
docker rmi 镜像ID/名称:标签

# 强制删除镜像(即使有容器依赖,不推荐)
docker rmi -f 镜像ID/名称:标签

# 删除所有未使用的镜像(谨慎操作)
docker image prune -a
5. 镜像导出与导入
python 复制代码
# 导出镜像为本地文件(.tar 格式)
docker save -o 文件名.tar 镜像ID/名称:标签

# 导入本地镜像文件
docker load -i 文件名.tar

四、网络管理

python 复制代码
# 查看 Docker 网络
docker network ls

# 创建自定义网络(推荐使用 bridge 模式)
docker network create --driver bridge 网络名

# 查看网络详细信息
docker network inspect 网络名

# 将容器连接到网络(容器可通过名称互访)
docker network connect 网络名 容器名

# 将容器从网络断开
docker network disconnect 网络名 容器名

# 删除网络(需先断开所有容器连接)
docker network rm 网络名

五、数据卷管理(持久化数据)

python 复制代码
# 查看数据卷
docker volume ls

# 创建数据卷
docker volume create 卷名

# 查看数据卷详细信息(包括主机挂载路径)
docker volume inspect 卷名

# 删除数据卷(需先断开关联容器)
docker volume rm 卷名

# 删除所有未使用的数据卷
docker volume prune

六、其他常用命令

python 复制代码
# 清理 Docker 缓存(未使用的容器、镜像、网络、卷)
docker system prune -a  # -a 表示删除所有未使用资源(谨慎操作)

# 查看 Docker 磁盘占用
docker system df

以上命令覆盖了 Docker 日常使用的核心场景,在 openEuler 系统中与其他 Linux 发行版(如 CentOS、Ubuntu)完全兼容,可根据实际需求灵活组合使用。

相关推荐
皓月盈江10 小时前
GO使用Gin框架实现模板定义、解析与渲染
linux·golang·go·gin·定义模板·解析模板·渲染模板
T量子永生11 小时前
Unisoc(紫光展锐) Kernel 6.18 DDK 编译框架详解
linux·运维·spring
z06.12 小时前
Linux系统中MySQL的安装
linux·mysql
wzg201612 小时前
ubuntu通过docker镜像部署安装onlyoffice
linux·ubuntu·docker
echome88812 小时前
Linux 定时任务:crontab 写法与常见失效原因
linux·运维·网络·定时任务·crontab
老约家的可汗12 小时前
Linux开发三件套:make、git、gdb 入门指南
linux·运维·服务器
Sw1zzle13 小时前
Go入门(零):Linux Ubuntu 22.04 安装 Go
linux·ubuntu·golang
device_Any13 小时前
接口文档写着三个字段,接口返回了五个
android·java·linux
无足鸟ICT13 小时前
【RHCA+】dstat命令(监控系统资源)
linux·服务器
时空无限14 小时前
ubuntu 26.04 sudo 连不上主机卡住然后失败问题处理
linux·服务器·ubuntu