harbor 搭建和部署
Docker官方的Docker Registry镜像,可以用来储存和分发Docker镜像。不过实在不昨的,仅仅能储存和分发镜像,也不提供UI,你还得自己找一个过时的UI搭建,受限制于Docker Registry,能找到的开源UI界面多数也不昨的。相反精心设计过的HarBor 最合适企业级应用,提供良好的WEB界面进行管理并且集成了相当多的功能,十分舒服。
前置条件
安装docker:Docker 安装,常用命令 - Net码畜 - 博客园 (cnblogs.com)
安装docker-docker-compose:Releases · docker/compose · GitHub
docker-compose离线安装:
从GitHub上面下载二进制文件(选择docker-compose-linux-x86_64 版本),然后拷到服务器路径下:/usr/local/bin/ ,将文件重命名为:docker-compose ,那么完整的路径是:/usr/local/bin/docker-compose
给权限:
sudo chmod +x /usr/local/bin/docker-compose
测试结果:
docker-compose --version
harbor搭建
harbor支持在线安装和离线安装两种模式,建议离线安装,毕竟离线下载都是件困难的事件,咱们就别搞什么在线安装给自己刨坑了。
官网地址:https://goharbor.io/
github下载地址:Releases · goharbor/harbor (github.com)
从github上面下载最新之后,上传至服务器(假设是根目录),然后解压文件。
tar xzvf harbor-offline-installer-v2.8.2.tgz
进入harbor文件夹,将配置文件harbor.yml.tmpl 修改为harbor.yml之后,编辑harbor.yml
第一个圈圈是修改主机名可以填写IP,正式环境建议使用域名否则docker login容易出现不清不楚的问题(亲测,改用域名之后就流畅了)。
第二圈是禁用HTTPS,看你的需求了。
第三圈是安装的默认密码,账号是admin, 密码是Harbor12345 , 自行修改。
修改完之后,直接运行。
./install.sh
静静等待,默认会帮你搞定一切,提示成功之后,输入IP/域名就可以访问了
服务重启
使用docker ps 查看容器,你会发现很多容器在运作,才保证这么多功能的Harbor在正常运行。
harbor依赖很多镜像组成服务,这些容器是必须启动,官方推荐配置是2核4G,为了保证这些容器的启动正常,内置了一个容器编排文件:docker-compose.yml
重启服务器使用docker ps 查看,你会发现多容器没有在运行,原因是因为这些容器设置:restart: always ,但是容器之间有依赖关系,因为没有按正确的顺序启动导致部分容器启动之后就失败了,所以需要你手动在Harbor目录下运行:docker-compose.yml
docker-compose up -d
-d 表示在后台运行,docker-compose 会自己寻找当前目录下docker-compose.yml运行。如果每次重启手动运行嫌麻烦,可以做起服务,让系统重启帮你运行一次。
使用命令: vi /etc/systemd/system/harbor.service
[Unit]
Description=Harbor service
Requires=docker.service
After=docker.service
[Service]
Type=simple
Restart=always
WorkingDirectory=/harbor //改成你的harbor路径
ExecStart=/usr/local/bin/docker-compose up //改成你的docker-compost路径
[Install]
WantedBy=multi-user.target
设置开机启动和启动
sudo systemctl enable harbor.service
sudo systemctl start harbor.service
重启服务器测试一下,万事大吉~