Ubuntu18 安装搭建Harbor

本文详细介绍了在Ubuntu18上安装docker-compose和Harbor的步骤,包括下载、设置权限、修改配置文件,以及解决安装过程中可能遇到的问题,如冲突和容器自动启动。此外,还提供了连接和使用Harbor的指南,包括推送镜像、处理登录问题以及配置Docker守护进程以信任Harbor的不安全注册表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装docker-compose

1.下载docker-compose的最新版本

sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2.为docker-compose添加可执行权限

chmod +x /usr/local/bin/docker-compose

3.验证查看docker-compose版本

docker-compose --version

如果docker compose的版本太低会提示如下错误:

2.安装Harbor

1)下载Harbor https://github.com/goharbor/harbor/releases ( 推荐离线安装包) 

tar -zxvf harbor-offline-installer-v1.8.0.tgz #解压离线安装包
mv harbor /opt/ #移到/opt目录下
cd /opt #进入到/opt目录
cd harbor
ll #查看目录内容

进入harbor目录修改harbor.yml 文件如下(我这里下载的离线安装的版本):

然后安装

 ./prepare
./install.sh

注意docker 里面不要有redis容器 否者会有提示for redis  Cannot create container for service redis: Conflict

3.使用Harbor

进入http://192.168.100.3

1.增加仓库地址:

文件目录:/etc/docker/daemon.json (没有则新建该文件) 

{ "insecure-registries":["192.168.100.3:80"] }

或者用指令 echo '{ "insecure-registries":["192.168.100.3:80"] }' > /etc/docker/daemon.json

重启dcoker:service docker restart

网上还有一种方法是:

修改 /lib/systemd/system/docker.service  在ExecStart的最后增加:--insecure-registry=198.168.100.3:80

修改docker.service一定要执行systemctl daemon-reload刷新配置 ,然后重启 systemctl restart docker

连接本地的harbor

如果是windows ,右击docker图标,在settings里的Deamon的Insecure registries里增加Harbor的IP和端口,docker会自动重启

2.push 镜像

为了以防用户信息错乱 可以先logout 然后在login

docker logout 192.168.100.3:80
docker login 192.168.100.3:80

a.新建repo-test私有仓库,

 #拉取镜像
docker pull hello-world
#给镜像打tag(镜像的格式为,镜像仓库IP:端口/镜像名称)
docker tag hello-world 192.168.100.3:80/repo-test/hello-world:20190720
 #PUSH到仓库
docker push 192.168.100.3:80/repo-test/hello-world

如果遇到如下错误:

root@gavin-vm:~# docker push 192.168.100.3:80/hello-world
The push refers to repository [192.168.100.3:80/hello-world]
af0b15c8625b: Retrying in 5 seconds 
其实是打tag时打的不对  通过命令journalctl -u docker.service 或者 查看日志文件/var/log/harbor/registry.log查看错误日志

----2019-8-14 补充

如图所示 每当ubuntu重启后 harbor的某些容器不能自动启动起来

也尝试过修改container的启动参数 docker container update --restart=always 容器名字/ID (禁止命令 docker container update --restart=no 容器名字/ID ),但是查看 /opt/harbor/docker-compose.yml文件里面确实有 restart: always

解决方案就是:将 harbor配成systemd的service,添加配置文件 /etc/systemd/system/harbor.service,内容如下:

[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor

[Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml up
ExecStop=/usr/local/bin/docker-compose -f /opt/harbor/docker-compose.yml down

[Install]
WantedBy=multi-user.target

然后启动该服务:

sudo systemctl enable harbor
sudo systemctl start harbor

重启再看,发现 harbor 容器组终于全部 up 了:

如果忘记密码 可以采用如下方式:

#1、进入[harbor-db]容器内部
docker exec -it harbor-db /bin/bash

#2、进入postgresql命令行,
 psql -U postgres -d postgres -h 127.0.0.1 -p 5432  #或者用这个可以不输入密码。

#3、切换到harbor所在的数据库
\c registry
#4、查看harbor_user表
select * from harbor_user;

#5、例如修改admin的密码,修改为初始化密码Harbor12345 ,修改好了之后再可以从web ui上再改一次。
 update harbor_user set password='94d45d5615496d023c8137c362d9d0a9', salt='g3vdOcNhqlQN4Q792SkznRN633ZqvIQ5'  where username='admin';

#6、退出 \q 退出postgresql,exit退出容器。
\q 
exit 

完成后通过WEB UI,就可以使用admin 、Harbor12345 这个密码登录了,记得修改这个默认密码哦,避免安全问题。

参考地址

Harbor 开机自启遇到的问题

goharbor/harbor

Ubuntu16 安装搭建Harbor

harbor搭建与使用

harbor搭建及使用

How To Install and Use Docker Compose on Ubuntu 18.04

Centos7 搭建 Harbor 私有仓库(一) -- 以http方式搭建

Docker私有仓库搭建(Harbor)

### 安装和配置 Harbor 容器镜像仓库 #### 准备工作环境 为了确保系统的软件包是最新的,在开始之前应当更新 Ubuntu 组件: ```bash sudo apt-get update && sudo apt-get upgrade -y ``` #### 安装必要的工具和支持库 对于创建和管理 RAID 阵列的支持,虽然这一步不是安装 Harbor 的必要条件,但对于某些特定存储需求可能是有用的。可以考虑安装 `mdadm` 工具来增强数据冗余能力。 ```bash apt install mdadm -y ``` #### Docker 和 Docker Compose 的准备 由于 Harbor 是基于 Docker 构建的应用程序,因此需要先安装 Docker 及其扩展组件 Docker Compose。如果尚未安装这两个工具,则应按照官方指南完成它们的部署过程[^1]。 #### 下载并解压 Harbor 安装文件 前往 [Harbor GitHub 发布页面](https://github.com/goharbor/harbor/releases),下载适用于 Linux AMD64 平台最新版本的离线安装包(例如:harbor-offline-installer-v2.5.0.tgz)。将其放置到服务器上的合适位置后执行如下命令进行解压缩操作: ```bash tar xvfz harbor-offline-installer-v*.tgz cd harbor* ``` #### 修改配置文件 编辑 `harbor.yml` 文件以适应具体的网络设置和其他偏好选项。特别是要注意修改 hostname 字段为实际使用的域名或 IP 地址;另外还需注意证书路径等相关参数是否正确指向已有的 SSL/TLS 证书文件夹。 #### 执行安装脚本 当一切就绪之后就可以通过下面这条简单的指令启动整个安装流程了: ```bash ./install.sh ``` 此过程中会自动处理好依赖关系以及初始化数据库等工作。完成后即可访问指定地址查看 Web UI 登录界面。 #### HTTPS 访问支持 默认情况下,Harbor 支持 HTTPS 协议的安全连接方式。如果有自定义 CA 或者打算采用 HTTP 方式的话,则需参照文档调整 `/etc/docker/daemon.json` 中的相关项,并重启服务使更改生效[^3]。 #### 测试与验证 最后可以通过尝试推送一个测试性的镜像至新建好的私有仓库来进行功能检验。比如使用 Redis 镜像作为例子: ```bash docker tag redis:latest your_harbor_host/library/redis:latest docker push your_harbor_host/library/redis:latest ``` 以上就是完整的在 Ubuntu搭建 Harbor 私有容器注册中心的方法概述。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值