在Docker中安装和运行CentOS容器
-
- 一、CentOS与Docker概述
-
- 1.1 CentOS简介
- 1.2 Docker运行CentOS的优势
- 二、安装前的准备
-
- 2.1 系统要求
- 2.2 验证Docker环境
- 三、CentOS镜像获取与验证
-
- 3.1 查找可用CentOS版本
- 3.2 拉取CentOS镜像
- 四、运行CentOS容器
-
- 4.1 基本运行流程
- 4.2 启动容器命令详解
- 4.3 进入运行中的容器
- 五、容器持久化与数据管理
-
- 5.1 数据卷使用
- 5.2 常用数据操作
- 六、容器网络配置
-
- 6.1 网络模式比较
- 6.2 自定义网络示例
- 七、容器管理技巧
-
- 7.1 常用管理命令
- 7.2 资源限制示例
- 八、常见问题解决
|
🌺The Begin🌺点点关注,收藏不迷路🌺 |
一、CentOS与Docker概述
1.1 CentOS简介
CentOS(Community Enterprise Operating System)是基于Red Hat Enterprise Linux(RHEL)源代码编译而成的Linux发行版。它以其高度稳定性和长期支持而闻名,是服务器环境中广泛使用的操作系统。
#mermaid-svg-Zps22xF4DNE6AMct {font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Zps22xF4DNE6AMct .error-icon{fill:#552222;}#mermaid-svg-Zps22xF4DNE6AMct .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Zps22xF4DNE6AMct .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Zps22xF4DNE6AMct .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Zps22xF4DNE6AMct .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Zps22xF4DNE6AMct .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Zps22xF4DNE6AMct .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Zps22xF4DNE6AMct .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Zps22xF4DNE6AMct .marker.cross{stroke:#333333;}#mermaid-svg-Zps22xF4DNE6AMct svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Zps22xF4DNE6AMct .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-Zps22xF4DNE6AMct .cluster-label text{fill:#333;}#mermaid-svg-Zps22xF4DNE6AMct .cluster-label span{color:#333;}#mermaid-svg-Zps22xF4DNE6AMct .label text,#mermaid-svg-Zps22xF4DNE6AMct span{fill:#333;color:#333;}#mermaid-svg-Zps22xF4DNE6AMct .node rect,#mermaid-svg-Zps22xF4DNE6AMct .node circle,#mermaid-svg-Zps22xF4DNE6AMct .node ellipse,#mermaid-svg-Zps22xF4DNE6AMct .node polygon,#mermaid-svg-Zps22xF4DNE6AMct .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-Zps22xF4DNE6AMct .node .label{text-align:center;}#mermaid-svg-Zps22xF4DNE6AMct .node.clickable{cursor:pointer;}#mermaid-svg-Zps22xF4DNE6AMct .arrowheadPath{fill:#333333;}#mermaid-svg-Zps22xF4DNE6AMct .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-Zps22xF4DNE6AMct .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-Zps22xF4DNE6AMct .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-Zps22xF4DNE6AMct .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-Zps22xF4DNE6AMct .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-Zps22xF4DNE6AMct .cluster text{fill:#333;}#mermaid-svg-Zps22xF4DNE6AMct .cluster span{color:#333;}#mermaid-svg-Zps22xF4DNE6AMct div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-Zps22xF4DNE6AMct :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}RHEL源代码CentOS编译免费企业级Linux
1.2 Docker运行CentOS的优势
- 轻量级:容器化CentOS比完整虚拟机更节省资源
- 快速部署:秒级启动CentOS环境
- 环境隔离:开发、测试、生产环境一致性
- 版本管理:轻松切换不同CentOS版本
二、安装前的准备
2.1 系统要求
| Docker | 18.06+ | 20.10+ |
| 内存 | 2GB | 4GB+ |
| 存储 | 10GB | 20GB+ |
2.2 验证Docker环境
# 检查Docker版本
docker –version
# 检查Docker服务状态
sudo systemctl status docker
三、CentOS镜像获取与验证
3.1 查找可用CentOS版本
#mermaid-svg-0pWBBhl5wJZwrJGZ {font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .error-icon{fill:#552222;}#mermaid-svg-0pWBBhl5wJZwrJGZ .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-0pWBBhl5wJZwrJGZ .marker{fill:#333333;stroke:#333333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .marker.cross{stroke:#333333;}#mermaid-svg-0pWBBhl5wJZwrJGZ svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .cluster-label text{fill:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .cluster-label span{color:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .label text,#mermaid-svg-0pWBBhl5wJZwrJGZ span{fill:#333;color:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .node rect,#mermaid-svg-0pWBBhl5wJZwrJGZ .node circle,#mermaid-svg-0pWBBhl5wJZwrJGZ .node ellipse,#mermaid-svg-0pWBBhl5wJZwrJGZ .node polygon,#mermaid-svg-0pWBBhl5wJZwrJGZ .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .node .label{text-align:center;}#mermaid-svg-0pWBBhl5wJZwrJGZ .node.clickable{cursor:pointer;}#mermaid-svg-0pWBBhl5wJZwrJGZ .arrowheadPath{fill:#333333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-0pWBBhl5wJZwrJGZ .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-0pWBBhl5wJZwrJGZ .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-0pWBBhl5wJZwrJGZ .cluster text{fill:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ .cluster span{color:#333;}#mermaid-svg-0pWBBhl5wJZwrJGZ div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-0pWBBhl5wJZwrJGZ :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}访问Docker Hub搜索centos查看Tags页签选择特定版本
3.2 拉取CentOS镜像
以CentOS 7为例:
# 拉取指定版本镜像
docker pull centos:centos7
# 查看已下载镜像
docker images
输出示例:
REPOSITORY TAG IMAGE ID CREATED SIZE
centos centos7 eeb6ee3f44bd 2 months ago 204MB

四、运行CentOS容器
4.1 基本运行流程
#mermaid-svg-UbZNFoIQuBO26kxi {font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .error-icon{fill:#552222;}#mermaid-svg-UbZNFoIQuBO26kxi .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-UbZNFoIQuBO26kxi .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-UbZNFoIQuBO26kxi .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-UbZNFoIQuBO26kxi .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-UbZNFoIQuBO26kxi .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-UbZNFoIQuBO26kxi .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-UbZNFoIQuBO26kxi .marker{fill:#333333;stroke:#333333;}#mermaid-svg-UbZNFoIQuBO26kxi .marker.cross{stroke:#333333;}#mermaid-svg-UbZNFoIQuBO26kxi svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-UbZNFoIQuBO26kxi .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .cluster-label text{fill:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .cluster-label span{color:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .label text,#mermaid-svg-UbZNFoIQuBO26kxi span{fill:#333;color:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .node rect,#mermaid-svg-UbZNFoIQuBO26kxi .node circle,#mermaid-svg-UbZNFoIQuBO26kxi .node ellipse,#mermaid-svg-UbZNFoIQuBO26kxi .node polygon,#mermaid-svg-UbZNFoIQuBO26kxi .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-UbZNFoIQuBO26kxi .node .label{text-align:center;}#mermaid-svg-UbZNFoIQuBO26kxi .node.clickable{cursor:pointer;}#mermaid-svg-UbZNFoIQuBO26kxi .arrowheadPath{fill:#333333;}#mermaid-svg-UbZNFoIQuBO26kxi .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-UbZNFoIQuBO26kxi .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-UbZNFoIQuBO26kxi .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-UbZNFoIQuBO26kxi .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-UbZNFoIQuBO26kxi .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-UbZNFoIQuBO26kxi .cluster text{fill:#333;}#mermaid-svg-UbZNFoIQuBO26kxi .cluster span{color:#333;}#mermaid-svg-UbZNFoIQuBO26kxi div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-UbZNFoIQuBO26kxi :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}拉取镜像创建容器启动容器进入容器配置环境
4.2 启动容器命令详解
docker run -itd –name my-centos centos:centos7
参数说明:
- -i:交互模式
- -t:分配伪终端
- -d:后台运行
- –name:容器命名
- -p:端口映射(主机端口:容器端口)
4.3 进入运行中的容器
# 使用exec进入容器
docker exec -it my-centos /bin/bash
# 验证系统版本
cat /etc/redhat-release

五、容器持久化与数据管理
5.1 数据卷使用
#mermaid-svg-yw2ApQVOwjrHI8EI {font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .error-icon{fill:#552222;}#mermaid-svg-yw2ApQVOwjrHI8EI .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-yw2ApQVOwjrHI8EI .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-yw2ApQVOwjrHI8EI .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-yw2ApQVOwjrHI8EI .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-yw2ApQVOwjrHI8EI .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-yw2ApQVOwjrHI8EI .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-yw2ApQVOwjrHI8EI .marker{fill:#333333;stroke:#333333;}#mermaid-svg-yw2ApQVOwjrHI8EI .marker.cross{stroke:#333333;}#mermaid-svg-yw2ApQVOwjrHI8EI svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-yw2ApQVOwjrHI8EI .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .cluster-label text{fill:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .cluster-label span{color:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .label text,#mermaid-svg-yw2ApQVOwjrHI8EI span{fill:#333;color:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .node rect,#mermaid-svg-yw2ApQVOwjrHI8EI .node circle,#mermaid-svg-yw2ApQVOwjrHI8EI .node ellipse,#mermaid-svg-yw2ApQVOwjrHI8EI .node polygon,#mermaid-svg-yw2ApQVOwjrHI8EI .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-yw2ApQVOwjrHI8EI .node .label{text-align:center;}#mermaid-svg-yw2ApQVOwjrHI8EI .node.clickable{cursor:pointer;}#mermaid-svg-yw2ApQVOwjrHI8EI .arrowheadPath{fill:#333333;}#mermaid-svg-yw2ApQVOwjrHI8EI .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-yw2ApQVOwjrHI8EI .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-yw2ApQVOwjrHI8EI .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-yw2ApQVOwjrHI8EI .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-yw2ApQVOwjrHI8EI .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-yw2ApQVOwjrHI8EI .cluster text{fill:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI .cluster span{color:#333;}#mermaid-svg-yw2ApQVOwjrHI8EI div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-yw2ApQVOwjrHI8EI :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}主机目录数据卷容器
# 创建带数据卷的容器
docker run -itd –name centos-data -v /host/path:/container/path centos:centos7
5.2 常用数据操作
# 容器与主机间复制文件
docker cp myfile.txt my-centos:/path/in/container
# 导出容器文件系统
docker export my-centos > centos-container.tar
六、容器网络配置
6.1 网络模式比较
| bridge | 默认桥接网络 | 单主机隔离环境 |
| host | 使用主机网络 | 高性能需求 |
| none | 无网络 | 特殊安全需求 |
6.2 自定义网络示例
# 创建自定义网络
docker network create my-net
# 使用自定义网络运行容器
docker run -itd –name centos-net –network my-net centos:centos7
七、容器管理技巧
7.1 常用管理命令
# 查看运行中的容器
docker ps
# 查看所有容器(包括停止的)
docker ps -a
# 启动/停止容器
docker start/stop my-centos
# 删除容器
docker rm my-centos
7.2 资源限制示例
# 运行带资源限制的容器
docker run -itd –name limited-centos \\
–memory 512m \\
–cpus 1 \\
centos:centos7
八、常见问题解决
#mermaid-svg-v0cKqcbC4e2JHBuK {font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .error-icon{fill:#552222;}#mermaid-svg-v0cKqcbC4e2JHBuK .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-v0cKqcbC4e2JHBuK .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-v0cKqcbC4e2JHBuK .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-v0cKqcbC4e2JHBuK .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-v0cKqcbC4e2JHBuK .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-v0cKqcbC4e2JHBuK .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-v0cKqcbC4e2JHBuK .marker{fill:#333333;stroke:#333333;}#mermaid-svg-v0cKqcbC4e2JHBuK .marker.cross{stroke:#333333;}#mermaid-svg-v0cKqcbC4e2JHBuK svg{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-v0cKqcbC4e2JHBuK .label{font-family:\”trebuchet ms\”,verdana,arial,sans-serif;color:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .cluster-label text{fill:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .cluster-label span{color:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .label text,#mermaid-svg-v0cKqcbC4e2JHBuK span{fill:#333;color:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .node rect,#mermaid-svg-v0cKqcbC4e2JHBuK .node circle,#mermaid-svg-v0cKqcbC4e2JHBuK .node ellipse,#mermaid-svg-v0cKqcbC4e2JHBuK .node polygon,#mermaid-svg-v0cKqcbC4e2JHBuK .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-v0cKqcbC4e2JHBuK .node .label{text-align:center;}#mermaid-svg-v0cKqcbC4e2JHBuK .node.clickable{cursor:pointer;}#mermaid-svg-v0cKqcbC4e2JHBuK .arrowheadPath{fill:#333333;}#mermaid-svg-v0cKqcbC4e2JHBuK .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-v0cKqcbC4e2JHBuK .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-v0cKqcbC4e2JHBuK .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-v0cKqcbC4e2JHBuK .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-v0cKqcbC4e2JHBuK .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-v0cKqcbC4e2JHBuK .cluster text{fill:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK .cluster span{color:#333;}#mermaid-svg-v0cKqcbC4e2JHBuK div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\”trebuchet ms\”,verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-v0cKqcbC4e2JHBuK :root{–mermaid-font-family:\”trebuchet ms\”,verdana,arial,sans-serif;}运行中已停止问题出现检查容器状态查看容器日志查看停止原因分析错误信息采取纠正措施

|
🌺The End🌺点点关注,收藏不迷路🌺 |




