【docker实战】如何登陆到自己的私有仓库?

docker用不了了,但工作还要继续。以前从公共仓库(Docker Hub)下载的镜像,需要推送到自己的私有仓库,之后再从私有仓库中拉取。

私有仓库我们一般使用Harbor,github地址为Harbor (github.com)。具体的安装方式请访问Docker 安装 Harbor (踩坑完毕)_m1 使用docker 安装 harbor-CSDN博客。由于时间关系,上面安装harbor的方式我并没验证。大家也可以网上自己寻找其它安装方法。

下面我直接进入主题,讲解如何登陆自己的私有仓库。

首先,我在阿里云上的地址http://41.68.153.178:6114搭建了一个harbor私有仓库。请不要试图访问这个地址,这是我在原有的基础上,随便改了几个数字,防止被攻击。这里给出一个这样的地址,是为了帮助大家更好的理解,至少我认为比"IP地址:端口号"的方式好多了。

要访问私有仓库,需要使用docker login的方式访问,不通过login是无法访问私有仓库的。下面是我首次使用的命令

复制代码
docker login --username=admin --password=41nccq827afbcb5i http://41.68.153.178:6114

回车后,服务器反馈给我一个错误。

复制代码
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get "https://41.68.153.178:6114": http: server gave HTTP response to HTTPS client

意思是说,使用--password选项的方式不安全,建议使用--password-stdin,并且说明我应该访问https,而不是访问http的地址。

因为docker默认会以https的方式访问,想要访问http需要修改docker的配置文件。

windows下配置文件路径为:C:/Users/你的用户名/.docker/daemon.json

linux下配置文件路径为:/etc/docker/daemon.json

在其中需要加入以下内容:

复制代码
"insecure-registries": ["41.68.153.178:6114"]

然后重启docker

复制代码
systemctl restart docker

这个地址就被设置为受信任列表,之后就可以访问了。

于是我再次输入

复制代码
docker login --username=admin --password-stdin http://41.68.153.178:6114

之后在光标处输入密码,不起作用。看了下官网,官网的解决思路是这样的:

复制代码
cat ~/my_password.txt | docker login --username foo --password-stdin

也就是说,需要一个文件,将密码传给这个stdin。

所以我在一个文件夹下建立了这个文件,并将密码粘贴进入。再次输入,登陆成功。

复制代码
cat ./my_password.txt | docker login --username admin --password-stdin  http://41.68.153.178:6114
Login Succeeded
相关推荐
谢平康38 分钟前
ubuntu扩展逻辑卷并调整文件系统大小步骤
linux·运维·ubuntu
悟能不能悟1 小时前
革新桌面自动化:微软UFO²操作系统深度解析与未来展望
运维·microsoft·自动化
启明真纳1 小时前
统信操作系统使用默认yum源安装 Docker 的踩坑
运维·docker·容器
@t.t.2 小时前
利用脚本搭建私有云平台,部署云平台,发布云主机并实现互连和远程连接
运维·云计算·openstack
lee_yanyi2 小时前
《一键式江湖:Docker Compose中间件部署108式》开篇:告别“配置地狱”,从此笑傲云原生武林!》
docker·云原生·中间件
国际云,接待2 小时前
腾讯云国际版服务器从注册到使用的完整流程指南
运维·服务器·阿里云·架构·云计算·腾讯云·csdn开发云
weisian1513 小时前
云原生--核心组件-容器篇-1-Docker和云原生关系(Docker是云原生的基石)
docker·云原生·容器
David爱编程3 小时前
Service 与 Headless Service 全面对比与实战指南
docker·容器·kubernetes
泛黄的咖啡店3 小时前
域名系统DNS
运维·云计算
巨懵3 小时前
不使用dockerfile的方式制作一个Ubuntu20.04的镜像
docker