为什么要安装portainer-ce

portainer-ce软件是docker的图型化管理软件,使用方便。

安装问题

root@takashi4-virtual-mach:/docker# docker pull portainer/portainer-ce
Using default tag: latest

Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

问题诊断

镜像源部分生效但拉取失败
docker info 显示已配置 https://docker.xuanyuan.me 镜像源,但拉取时仍出现 Retrying,表明:

该镜像源可能未同步 portainer/portainer-ce 镜像(尤其新版镜像)。
镜像源服务器响应超时或网络不稳定(常见于公共免费源)。

Docker 守护进程配置问题
修改 daemon.json 后虽重启服务,但未清理旧缓存可能导致配置未完全生效。

解决方案

步骤 1:更换国内可用镜像源(推荐)
从搜索结果中选取2025年实测有效的镜像源替换:

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
    "https://docker.1ms.run",        # 社区维护镜像,响应快
    "https://docker.xuanyuan.me",    # 保留现有配置
    "https://mirror.ccs.tencentyun.com"  # 腾讯云镜像(需云服务器内网)
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

步骤 2:强制清理 Docker 缓存
清除旧缓存确保新配置生效:

docker system prune -af  # 清除所有缓存镜像及容器

步骤 3:直接通过镜像源拉取
绕过默认仓库,使用镜像源域名拼接拉取:

docker pull docker.xuanyuan.me/portainer/portainer-ce:latest

完整流程

  1. 编辑配置文件(使用sudo确保权限)
sudo vi /etc/docker/daemon.json
  1. 写入以下内容(示例)
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.1panel.live"
  ]
}
  1. 重载并重启服务
sudo systemctl daemon-reload
sudo systemctl restart docker
  1. 验证配置
docker info | grep -A 1 "Registry Mirrors"

预期输出:

Registry Mirrors:
https://docker.m.daocloud.io/
https://docker.1panel.live/
执行后若问题依旧,请提供 sudo docker info 完整输出及 daemon.json 内容,进一步定位问题。

root@takashi4-virtual-mach:/docker# docker pull portainer/portainer-ce
Using default tag: latest
latest: Pulling from portainer/portainer-ce
1b64c1de2c44: Retrying in 1 second 
64749abcb08e: Retrying in 1 second 
c551c6af3241: Retrying in 1 second 
daa9c4a9d7de: Waiting 
8a0249c989d5: Waiting 
c3747a8ff100: Waiting 
571c8434c29b: Waiting 
4f4fb700ef54: Waiting 
latest: Pulling from portainer/portainer-ce
1b64c1de2c44: Pull complete 
64749abcb08e: Pull complete 
c551c6af3241: Pull complete 
daa9c4a9d7de: Pull complete 
8a0249c989d5: Pull complete 
c3747a8ff100: Pull complete 
571c8434c29b: Pull complete 
4f4fb700ef54: Pull complete 
Digest: sha256:d5b9eba8d4d2f4e952aee6a6fb154e618857a976f734bfcec5a5603b03f45acd
Status: Downloaded newer image for portainer/portainer-ce:latest
docker.io/portainer/portainer-ce:latest
root@takashi4-virtual-mach:/docker# 

看起来好像成功了,咱来试试
注意:docker run 的所有参数必须作为单条完整命令执行,不能分行输入(除非用 \ 续行符连接)。

docker run -d --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data --restart unless-stopped portainer/portainer-ce:latest

多行:

docker run -d \

  --name portainer \

  -p 9000:9000 \

  -v /var/run/docker.sock:/var/run/docker.sock \

  -v portainer_data:/data \

  --restart unless-stopped \
  portainer/portainer-ce:latest

最后出现一串数字说明container容器创建成功。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐