• 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

     重启服务器测试一下,万事大吉~

  • 相关阅读:
    nvm下载NodeJs失败解决办法
    项目管理中,项目干系人的角色和责任
    【???】???
    发UPS国际快递到墨西哥的收费标准
    [闲聊篇] 一年来的经历闲叙
    车牌比对程序源代码(c++)
    消耗品or耐用品:两轮电动车离“靠谱”还有多远?
    如何找到一个正规的level2行情接口?
    Java实现WebSocket客户端和服务端(简单版)
    Adobe Premiere基础-编辑素材文件常规操作(脱机文件,替换素材,素材标签和编组,素材启用,便捷调节不透明度,项目打包)(十七)
  • 原文地址:https://www.cnblogs.com/netcore3/p/17513138.html