Docker-Compose部署Harbor
          目录
          
        
        
      docker-compose部署harbor
官网下载 harbor 安装包
https://github.com/goharbor/harbor/releases
下载成功后并上传至服务器
解压 & 安装
tar -zxvf harbor-offline-installer-v2.3.1.tgz修改配置文件
cd harbor
cp harbor.yml.tmpl  harbor.yml
vim harbor.yml修改如下配置:

预检查
./prepare结果:

执行安装脚本:
 ./install.sh报错:Error response from daemon: invalid mount config for type “bind”: bind source path does not exist: /var/log/harbor/
创建这个目录:
mkdir /var/log/harbor/结果:

访问:101.34.xxx.xxx:8081 初始账号/密码 : admin/Harbor12345

harbor 启动,停止,重启
# 进入 目录:/usr/local/docker/harbor/harbor
docker-compose start
docker-compose stop
docker-compose restart配置docker客户端
vim /etc/docker/daemon.json添加一下内容:
{
  "registry-mirrors": ["https://o268vo1s.mirror.aliyuncs.com"],
  "insecure-registries": ["101.34.xxx.xxx:8081"]
}重启docker服务
systemctl daemon-reload
systemctl restart docker检查配置是否生效
docker info结果:

创建 Harbor 项目&用户


Harbor 上传镜像
这里以我的项目为例:登录 39.106.xxx.xxx 服务器
docker images 查看已经存在的docker镜像

推送 scms 镜像到私有仓库
# 在项目中标记镜像  这里使用image id 或则 docker  ps -a 的 scms1.0
docker tag scms1.0 101.34.xxx.xxx:8081/jenkins/scms:1.0.0
# 登录 Harbor
docker login 101.34.xxx.xxx:8081 -u admin -p Harbor12345
# 推送镜像到项目
docker push 101.34.xxx.xxx:8081/jenkins/scms:1.0.0结果:

登录 harbor管理控制台

拉取命令:
# 先登录再拉取
docker login 101.34.xxx.xxx:8081 -u admin -p Harbor12345
docker pull 101.34.xxx.xxx:8081/jenkins/scms:1.0.0
docker push 很慢,走全局代理的方式:
# 创建目录
mkdir -p /etc/systemd/system/docker.service.d
# 创建文件
vi /etc/systemd/system/docker.service.d/http-proxy.conf
# 写入配置  内网harbor ip+端口
[Service]
Environment="HTTP_PROXY=http://172.30.86.239:9002/"
# 刷新更改
systemctl daemon-reload && systemctl restart docker
# 验证是否生效
systemctl show --property=Environment docker
>>> Environment=HTTP_PROXY=http://172.30.86.239:9002/