适配系统:CentOS Linux release 7.9

前置说明

安全初始化完成后安装 Docker+Compose 插件 + Portainer 可视化面板

Docker 优势同文档不变,仅系统安装逻辑适配 CentOS7。

架构校验命令:

uname -m
# 输出x86_64 64位,满足安装要求

一、卸载系统旧版本 Docker 组件

CentOS7 自带旧版 docker,先清理避免冲突

yum remove -y docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

二、安装依赖 & 配置 Docker 官方 YUM 源

安装 yum 工具依赖

yum install -y yum-utils ca-certificates curl

添加 Docker 官方 YUM 仓库

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

刷新 yum 缓存

yum makecache fast

三、安装 Docker Engine + Compose 全套组件

yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

四、启动 Docker 并设置开机自启

systemctl start docker
systemctl enable docker
# 查看运行状态
systemctl status docker

五、配置国内 Docker 镜像加速(解决拉取慢)

mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.1ms.run",
    "https://docker.m.daocloud.io",
    "https://docker.1panel.live",
    "https://dockerproxy.net",
    "https://docker.xuanyuan.me",
    "https://docker-0.unsee.tech",
    "https://registry.cyou"    
  ]
}
EOF
# 重载系统服务配置,重启docker生效
systemctl daemon-reload
systemctl restart docker
# 验证镜像配置是否加载成功
docker info

六、普通用户免 sudo 操作 docker(对应前文创建的 buer 用户)

报错:permission denied while trying to connect to the Docker daemon socket 执行以下命令

# 将当前登录用户加入docker用户组(替换为你的运维用户名,示例buer)
usermod -aG docker buer
# 刷新组权限,不用重新登录
newgrp docker
# 验证,无sudo能正常执行即成功
docker ps

七、Docker Compose 常用通用命令(跨系统通用,无需修改)

CentOS 安装docker-compose-plugin后直接使用docker compose,无需单独安装二进制包

# 后台启动服务
docker compose up -d
# 查看运行容器
docker compose ps
# 实时查看日志
docker compose logs -f [服务名]
# 删除容器+网络,保留数据卷
docker compose down
# 重新构建镜像并启动
docker compose up -d --build
# 单独重启指定服务
docker compose restart [服务名]
# 清理无用镜像
docker image prune -a
# 彻底清理:镜像、停止容器、网络、数据卷
docker system prune -a --volumes

八、安装 Portainer 可视化管理面板(端口 9443)

创建持久化数据卷

docker volume create portainer_data

后台运行 Portainer 容器

docker run -d -p 9443:9443 --name portainer --restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce:latest

防火墙放行 9443 端口(CentOS7 firewalld)

前文防火墙规则配套添加,外网才能访问面板

# 永久放行9443/tcp
firewall-cmd --permanent --add-port=9443/tcp
# 重载规则生效
firewall-cmd --reload
# 验证端口已放行
firewall-cmd --list-ports

浏览器访问面板

地址:https://服务器公网IP:9443

关键注意事项(和 Ubuntu 文档一致)

  1. 首次初始化限时 5 分钟,超时未注册需重启容器,建议无痕浏览器打开;
  2. 管理员密码最低 12 位复合密码;
  3. 新版需要 setup_token,查看命令:
docker logs portainer | grep setup_token=

截取日志内setup_token=xxx字符串填入页面;

Portainer 重启命令

# docker run部署方式重启
docker restart portainer

九、配套补充操作(适配 CentOS7 环境)

验证 Docker 安装版本

docker -v
docker compose version

测试容器是否正常运行

docker run --rm hello-world
# 输出Hello from Docker! 代表环境完整可用

云服务器双重放行提醒

除 firewalld 放行 9443 外,云厂商控制台安全组必须同步放行 9443 端口,否则外网无法打开 Portainer 面板。

彻底卸载 Docker(如需重装)

systemctl stop docker
yum remove -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
rm -rf /var/lib/docker /etc/docker
docker volume rm portainer_data