Harbor是一个用于存储Docker镜像的企业级Registry服务。
- 安装docker:
# curl http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker.repo
# yum makecache fast
# yum install -y docker-ce
# systemctl start docker && systemctl enable docker
- 下载最新的docker-compose二进制文件:
# curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
- 下载harbor离线安装包:
github地址:https://github.com/goharbor/harbor/releases
# cd /software
# wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-offline-installer-v1.9.1.tgz
# tar zxf harbor-offline-installer-v1.9.1.tgz
- 安装harbor:
# cd harbor/
# vim harbor.yml
hostname: harbor.lzxlinux.com #域名
harbor_admin_password: Harbor12345 #admin用户初始密码
data_volume: /data #数据存储路径,自动创建
log:
level: info
local:
rotate_count: 50
rotate_size: 200M
location: /var/log/harbor #日志路径
# sh install.sh
- 登录报错:
# echo '192.168.1.59 harbor.lzxlinux.com' >> /etc/hosts
# docker login harbor.lzxlinux.com
Username: admin
Password:
Error response from daemon: Get https://harbor.lzxlinux.com/v2/: dial tcp 192.168.1.59:443: connect: connection refused
- 解决:
# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry=harbor.lzxlinux.com
# systemctl daemon-reload && systemctl restart docker.service
harbor服务器
# cd /software/harbor
# docker-compose down -v
# docker-compose up -d
- 重新登录:
# docker login harbor.lzxlinux.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
- 推送镜像:
# docker images |grep centos
centos latest 0f3e07c0138f 2 weeks ago 220MB
# docker tag centos:latest harbor.lzxlinux.com/public/centos:latest
# docker push harbor.lzxlinux.com/public/centos:latest
The push refers to repository [harbor.lzxlinux.com/public/centos]
9e607bb861a7: Pushed
latest: digest: sha256:6ab380c5a5acf71c1b6660d645d2cd79cc8ce91b38e0352cbf9561e050427baf size: 529
刷新harbor页面,可以看到刚推送到harbor仓库的镜像