1.wget https://storage.googleapis.com/harbor-releases/release-1.8.0/harbor-offline-installer-v1.8.0.tgz
2.yum -y install lrzsz
3.curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-uname -s
-uname -m
-o /usr/local/bin/docker-compose
4.chmod +x /usr/local/bin/docker-compose
5. tar xf harbor-offline-installer-v1.8.0.tgz
cd harbor
https 访问方式的配置:
mkdir -pv /data/cert/
openssl genrsa -out /data/cert/server.key 2048
####### openssl req -x509 -new -nodes -key /data/cert/server.key -subj “/CN=192.168.1.200” -days 3650 -out /data/cert/server.crt
ll -a /data/cert
vim harbor.yml
hostname: 192.168.1.200
https:
port: 443
certificate: /data/cert/server.crt
private_key: /data/cert/server.key
应用配置并重起服务
./prepare
docker-compose down
docker-compose up -d
浏览器https方式测试:
客户端配置(每个访问harbor的机器上都要配置)
vim /etc/docker/daemon.json
{
“insecure-registries”: [“192.168.1.200”]
}
systemctl restart docker
创建仓库:
创建账户:
项目授权:
- 点击 项目名称
- 点击 成员 标签
3.点击 “+用户” 标签
测试:
上传:
[root@docker ~]# docker login harbor.io
Username: wing
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
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest be1f31be9a87 13 days ago 109MB
# docker image tag daocloud.io/library/nginx:latest 192.168.1.200/jenkins/nginx
# docker push 192.168.1.200/jenkins/nginx
The push refers to repository [harbor.io/library/nginx]
92b86b4e7957: Pushed
94ad191a291b: Pushed
8b15606a9e3e: Pushed
latest: digest: sha256:204a9a8e65061b10b92ad361dd6f406248404fe60efd5d6a8f2595f18bb37aad size: 948
在web界面中查看镜像是否被上传到仓库中