如何在Portainer中允许不安全的私有容器镜像仓库?
解决方法
首先明确:/etc/docker/daemon.json 是Docker宿主机的配置文件,并非Portainer容器内部文件,无需进入Portainer容器修改它。
方法一:直接在宿主机修改(推荐)
通过Putty连接到Docker宿主机后,执行以下操作:
- 用文本编辑器打开文件(以
nano为例):sudo nano /etc/docker/daemon.json - 添加允许HTTP私有仓库的配置(文件不存在则直接创建),示例如下:
{ "insecure-registries": ["你的私有仓库IP:端口"] } - 保存退出:按
Ctrl+O确认保存,回车后按Ctrl+X退出编辑器 - 重启Docker服务使配置生效:
注:重启Docker会导致所有运行中容器重启,若Portainer启动时加了sudo systemctl restart docker--restart=always参数,会自动重新启动。
方法二:通过Portainer修改宿主机文件
若需通过Portainer操作,需先确保Portainer容器挂载了宿主机的/etc/docker目录:
- 若当初未挂载,需重新创建Portainer容器,命令示例:
docker run -d -p 9000:9000 \ --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /etc/docker:/etc/docker \ portainer/portainer-ce - 挂载完成后,在Portainer内操作:
- 登录Portainer,进入对应Docker主机的管理界面
- 找到Portainer容器,点击「控制台」
- 在控制台执行命令编辑文件:
nano /etc/docker/daemon.json
关于你遇到的容器操作问题
- Portainer控制台刷新:尝试更换Chrome/Firefox浏览器,或更新Portainer至最新版本
- 附加容器导致崩溃:避免使用
docker attach命令,改用docker exec -it 容器名 /bin/bash进入容器,attach会绑定容器主进程,操作不当易引发容器退出
内容的提问来源于stack exchange,提问作者fkk_276452
相关产品推荐
相关产品推荐

