docker安装harbor 私有仓库以及网上教程的一些坑

目录

一.harbor仓库 服务端安装

0.先创建目录 

1.安装

2.解压到当前文件夹

3.修改配置文件harbor.yml

4.运行

5.本机登陆测试

6.浏览器登录测试

二.使用另一台服务器推送镜像到docker私有仓库(客户端服务器操作)

1.客户端安装docker

2.配置客户端受信任的http(注意是客户端)

3.重启docker

4.客户端登录服务端的docker私有仓库

5.客户端推送镜像到docker私有仓库

6.别的客户端拉取pull镜像

7.注意一点 网上很多说要修改docker.service 配置文件


一.harbor仓库 服务端安装

0.先创建目录 

mkdir /mydata/harbor

1.安装

或者去官网下载 传输到服务器

wget http:// harbor.orientsoft.cn/harbor-2.0.2/harbor-offline-installer-v2.0.2.tgz

2.解压到当前文件夹

tar zxvf harbor-offline-installer-v2.0.2.tgz

3.修改配置文件harbor.yml

hostname = xxx.xxx.xxx.xxx #(你的ip)

修改http下的port

port = 5000(可自行设置)

注释掉https的所有配置

其他不变

4.运行

sh install.sh

5.本机登陆测试

docker login -u admin -p Harbor12345 http://127.0.0.1:5000

出现这样的结果代表安装运行正常

6.浏览器登录测试

http://你的IP:5000/harbor/sign-in

默认用户名密码为:admin/Harbor12345

出现该页面代表外网访问正常

如果不能访问则关闭防火墙或者云服务器的话则设置安全组开放端口

二.使用另一台服务器推送镜像到docker私有仓库(客户端服务器操作)

1.客户端安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh 启动docker : systemctl start docker

2.配置客户端受信任的http(注意是客户端)

因为http不够安全而我们又没有使用https那么则要进行一个配置

如果不配置则会报错:http: server gave HTTP response to HTTPS cliviment

vim /etc/docker/daemon.json

在文件中写入.

{

"registry-mirrors": ["https://25o6jk0m.mirror.aliyuncs.com"],

"insecure-registries":["http://服务端IP:5000"]

}

3.重启docker

systemctl daemon-reload

systemctl reload docker

4.客户端登录服务端的docker私有仓库

docker login -u admin -p Harbor12345 http://服务端IP:5000

5.客户端推送镜像到docker私有仓库

docker images

先查看客户端有哪些镜像

修改 IMAGE ID为510c4e6ec9f3镜像名称

docker tag 510c4e6ec9f3 fastdfs:1.2

给打包好的镜像打上标签

docker tag 本地镜像名:版本 Harbor 私有仓库ip+端口/项目名/仓库镜像名:版本

docker tag fastdfs:1.2 xxx.xxx.xxx.xxx:5000/library/fastdfs:1.2

推送打好标签的镜像

docker push xxx.xxx.xxx.xxx:5000/library/fastdfs:1.2

6.别的客户端拉取pull镜像

docker pull xxx.xxx.xxx:5000/library/fastdfs:1.2

查看镜像

docker images 

7.注意一点 网上很多说要修改docker.service 配置文件

千万不要修改否则会报错:

Warning: The unit file, source configuration file or drop-ins of docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.

猜你喜欢

转载自blog.csdn.net/weixin_42469135/article/details/121049807