环境准备
- 安装
docker-ce
(过程省略) - 安装
docker-compose
(过程省略) - 安装
harbor
下载Harbor离线安装包
- 下载地址:
http://harbor.orientsoft.cn/
,找个最新的,本文使用v1.5.0
版本 - 使用
tar xvf harbor-offline-installer-v1.5.0.tgz
- 进入到解压后的目录,
harbor/
配置harbor.cfg
【关键配置】
#hostname设置访问地址,可以使用ip、域名,不可以设置为127.0.0.1或localhost
hostname = harbor.deri.com
# 访问协议,默认是http,也可以设置https,如果设置https,则nginx ssl需要设置on
ui_url_protocol = http
#配置admin用户的密码,默认Harbor12345
harbor_admin_password = Harbor12345
#是否只允许admin用户创建项目,everyone是所有人都可以
project_creation_restriction = adminonly
# 是否开启自注册
self_registration = on
# Token有效时间,默认30分钟
token_expiration = 30
配置docker-compose.yml
如果需要修改访问端口,默认80
,443
,也可以不修改.
##此处粘贴部分配置
proxy:
image: vmware/nginx-photon:v1.5.0
container_name: nginx
restart: always
volumes:
- ./common/config/nginx:/etc/nginx:z
networks:
- harbor
ports:
- 80:80
- 443:443
- 4443:4443
depends_on:
- mysql
- registry
- ui
- log
logging:
driver: "syslog"
options:
syslog-address: "tcp://127.0.0.1:1514"
tag: "proxy"
启动harbor
到harbor/
目录下,执行./install.sh
,harbor
会根据当前目录下docker-compose.yml
配置,下载相关镜像,并启动。
配置本地hosts
文件
配置hosts
文件,增加部署机器的 IP
和 域名【域名是harbor.cfg
中的hostname
】
Windows: C:\Windows\System32\drivers\etc\hosts
Linux: /etc/hosts
访问Harbor
浏览器输入hostname
,用户名密码:admin/Harbor12345
上传镜像
创建项目
注意选择访问级别
使用docker login
登录到私有仓库
[root@node4 ~]# docker login harbor.deri.com
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
这里有个问题
执行上面的一步肯定会报错:Error response from daemon: Get https://harbor.deri.com/v2/users/: dial tcp 192.168.41.139:443: getsockopt: connection refused
,原因是docker
认为这个仓库不可信,需要在/etc/docker/daemon.json
(不存在就新建)增加insecure-registries
配置,注意是标准的json格式!
{
"insecure-registries": ["harbor.deri.com"]
}
然后重启docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
重启harbor服务
#到harbor/目录下执行
docker-compose down -v
docker-compose up -d
本地随便找个镜像
修改其tag
,如
docker tag hub.c.163.com/library/mysql:5.7 harbor.deri.com/deri/mysql:5.7
注意tag
格式:域名
/项目名
/镜像名
:版本
上传镜像
docker push harbor.deri.com/deri/mysql:5.7
登录UI
查看
从私有镜像仓库拉取镜像
docker pull harbor.deri.com/deri/mysql:5.7
退出登录
docker logout harbor.deri.com
使用结束!接下来创建项目、用户了。