搭建Harbor镜像仓库

目录

1.简介

2.官网下载 Harbor

2.1 解压文件

2.2 更改harhor.yml配置文件

3. 配置安装

4. 常见安装问题

4.1. 未安装docker

4.2. 无法连接到docker守护线程

5. 访问harbor服务

6.创建测试账号

6.1 创建两个账号

7.登陆harbor创建并推送镜像

7.1 登陆harbor

7.1.1 重新加载daemon.json文件重启docker

7.1.2 安装 docker-compose

8.项目处理

8.1 制作镜像

8.2 推送镜像

8.3 拉取镜像

6. 常用操作

7.启动和停止


1.简介

        由于公司项目每次都是需要自己手动打包,而且随着服务的不断扩展,应对docker容器化部署让我显得有心无力,不得不部署一套流水线用来一键部署项目

于是乎,想要搭建一个比较完善的流水线,首先镜像仓库是必不可少的

镜像仓库选择Harhor

2.官网下载 Harbor

官方文档: Harbor docs | Harbor 2.4 Documentation

准备:

        1.安装好docker和docker-compose

        

2.1 解压文件

tar xzvf harbor-online-installer-version.tgz

2.2 更改harhor.yml配置文件

可参考 Harbor docs | Configure the Harbor YML File

        1.更改hsotname

        2.可以先注释掉https监听

3. 配置安装

# 执行脚本安装
sh install.sh

4. 常见安装问题

4.1. 未安装docker

 解决方案:先更新yum包然后安装docker

4.2. 无法连接到docker守护线程

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

 解决方案:

        设置开机启动docker

[root@ harbor]# systemctl start docker
[root@ harbor]# systemctl enable docker

5. 访问harbor服务

通过在harbor.yml文件中配置的hostname访问

用户名:admin

密码: Harbor12345

6.创建测试账号

6.1 创建两个账号

这里创建两个账号主要是测试两个账号的权限

7.登陆harbor创建并推送镜像

7.1 登陆harbor

# 登陆harbor 替换成自己的域名
docker login http://you.domain/

出现拒绝连接,很显然tcp网络通信端口443我把注释掉了 

问题原因:

      docker login在默认情况下是采用https协议,所以我们应该将选项insecure-registry添加到docker的配置文件中。
打开/etc/docker/daemon.json,添加如下内容  

{
    "insecure-registries":["hhmt-harhor.yoqu.net"]
}

7.1.1 重新加载daemon.json文件重启docker

systemctl daemon-reload
systemctl restart docker

7.1.2 安装 docker-compose

yum -y install docker-compose

更新后daemon.json,必须重新启动 Docker Engine 和 Harbor。

# 重启 Docker 引擎。
systemctl restart docker
# 停止harbor
docker-compose down -v
# 重启harbor
docker-compose up -d

 此时已经可以正常登陆了(域名决定不打马赛克了..)

docker login hhmt-harhor.yoqu.net

原文参考:使用Harbor搭建Docker私有仓库并建立访问(http与https自签名方式)_echos2019的博客-CSDN博客

官方文档:Harbor docs | Run the Installer Script

8.项目处理

8.1 制作镜像

1.制作Dockerfile文件

FROM ascdc/jdk8
MAINTAINER huachun
EXPOSE 9527
 
COPY ./delivery-0.0.1-SNAPSHOT.jar /data
 
ADD delivery-0.0.1-SNAPSHOT.jar  delivery-0.0.1-SNAPSHOT.jar
 
ENTRYPOINT ["java","-jar","delivery-0.0.1-SNAPSHOT.jar"]
 
ENV TZ=Asia/Shanghai

参考:使用docker部署springboot项目服务_hauchun的博客-CSDN博客

2.构建镜像

此时可以看到刚刚构建好的镜像 

 

8.2 推送镜像

1.先打标签

2.推送镜像到harbor

此时在Harbor上面已经可以看到刚刚推送的镜像 

8.3 拉取镜像

我这边有四台服务器,所以选择换一台服务器拉取镜像并运行服务

这台服务器上docker容器是没有任何镜像的

复制拉取命令

docker pull hhmt-harhor.yoqu.net/delivery-ocpx/springboot-delivery:0.0.1

拉取成功后 

 接下来运行容器并访问服务试一试

 

 此时运行在容器的镜像服务已经启动成功了 

官方文档:Harbor docs | Preheat Images

6. 常用操作

# 重启 Docker 引擎
systemctl restart docker
# 停止Harbor
docker-compose down -v
# 重启Harbor
docker-compose up -d

 此时已经停止了harbor服务。

7.启动和停止

# 启动
docker-compose start
# 停止
docker-comose stop
# 重启
docker-compose restart

原文参考:Harbor部署_脚丫先生的博客-CSDN博客_harbor部署

8.常见问题

8.1  http方式无法访问

问题详情: http: server gave HTTP response to HTTPS client

解决方法:

vim  /etc/docker/daemon.json

修改daemon.json文件

{
"insecure-registries":["域名:端口号"]
} 

原文参考:Http: server gave HTTP response to HTTPS client 解决方法_兔子不会武功的博客-CSDN博客

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值