Use docker-compose deploy harbor
使用 docker-compose 部署 harbor
使用Bitnami镜像
使用
Bitnami的原因:Bitnami密切跟踪上游源更改,能够及时发布新镜像的版本,可以尽快获得最新的错误修复和功能。Bitnami在容器、虚拟机以及云镜像中使用相同的组件和配置方法,可根据项目需求轻松切换格式。Bitnami所有组件使用的镜像都基于minideb(基于Debain镜像的极简镜像),它提供了小型的基础容器镜像和成熟领先的Linux发行版。
安装部署harbor
下载
docker-compose文件以及harbor各组件的配置文件:1
2curl -LO https://raw.githubusercontent.com/bitnami/containers/main/bitnami/harbor-portal/docker-compose.yml
curl -L https://github.com/bitnami/containers/archive/main.tar.gz | tar xz --strip=2 containers-main/bitnami/harbor-portal && cp -RL harbor-portal/config . && rm -rf harbor-portal运行
harbor各组件:1
docker-compose up -d
harbor的常规使用:登录
harbor,如http://159.75.138.212,账号为admin,密码为bitnami:访问地址由组件
nginx服务决定,默认为80端口;账号密码在docker-compose的core service配置中设置:创建项目,为镜像提供仓库项目上下文:
客户端推送镜像:
1
2
3
4## 为目标镜像设置标签
docker tag ${image_id} ${harbor_addr}/${project_name}/${image_name}:${tag_name}
## 推送镜像
docker push ${harbor_addr}/${project_name}/${image_name}:${tag_name}1
2
3
4
5
* 客户端拉取镜像:
```bash
docker pull ${harbor_addr}/${project_name}/${image_name}:${tag_name}
注意事项
客户端首次推送或拉取镜像,需要进行登录操作:
1
docker login ${harbor_addr} -u admin -p bitnami
若出现如下异常,则需设置
http访问方式,在/etc/docker/daemon.json添加不安全访问方式后重启docker:1
Error response from daemon: Get "https://159.75.138.212:80/v2/": http: server gave HTTP response to HTTPS client
1
2
3
4
5
6## /etc/docker/daemon.json
{
"insecure-registries": ["159.75.138.212:80"]
}
## restart docker
systemctl daemon-reload && systemctl restart docker若再次登录出现如下异常,需要修改
/etc/hosts,将域名访问设置为ip端口访问:1
Error response from daemon: Get "http://159.75.138.212/v2/": Get "http://reg.mydomain.com/service/token?account=admin&client_id=docker&offline_token=true&service=harbor-registry": dial tcp: lookup reg.mydomain.com on 183.60.83.19:53: no such host
1
2## /etc/hosts
159.75.138.212 reg.mydomain.com
参考文献
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 后端学习手记!








