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)完全兼容,可根据实际需求灵活组合使用。

相关推荐
CodeDevMaster25 分钟前
Linux中tmux入门使用指南:告别SSH断线烦恼,提升终端工作效率的神器
linux·运维·ssh
Brandon汐44 分钟前
在Linux中部署tomcat
linux·运维·tomcat
sniper_fandc1 小时前
VirtualBox虚拟机网卡配置
linux·网络·虚拟机
白鸽梦游指南1 小时前
RHCE模拟测试
linux·运维·服务器
不会吉他的肌肉男不是好的挨踢男1 小时前
Linux生成自签名 SSL 证书(适用于测试或内部使用)
linux·运维·ssl
飘忽不定的bug2 小时前
linux磁盘加密
linux·开源
herderl2 小时前
【无标题】命名管道(Named Pipe)是一种在操作系统中用于**进程间通信(IPC)** 的机制
java·linux·服务器·嵌入式硬件·php
基于python的毕设2 小时前
C语言宏相关操作
linux·c语言·ubuntu
研究是为了理解2 小时前
Linux Shell:Nano 编辑器备忘
linux·运维·编辑器
千反田真的打不过我2 小时前
阿里云服务linux安装单机版
linux·阿里云·云计算