# Harbor安装

Harbor (opens new window)官网下载合适的安装包

# 解压

tar -vxf harbor-offline-installer-v2.5.3.tgz -C /home

image-20230517221050395

# 配置

创建harbor.yml

cp harbor.yml.tmpl harbor.yml

然后修改其中的几项内容

image-20230517221604116

# 生成配置文件
./prepare

之后,如果有修改harbor.yml文件,均要执行此命令

# 安装
./install.sh
# 访问

地址为 ip:端口

# 修改docker配置文件
vi /etc/docker/daemon.json

将harbor的ip端口配置进去

{
    "registry-mirrors": ["https://mirror.ccs.tencentyun.com"],
    "insecure-registries":["43.138.xx.xx:18xxx"],
    "live-restore": true
}

重启docker

systemctl daemon-reload && systemctl restart docker

# 命令

# 停止容器并删除全部镜像,慎用
docker-compose down
# 重载配置文件
./prepare
# 开启所有容器
docker-compose up -d

# 项目配置

添加Dockerfile文件

# 指定基础镜像
FROM adoptopenjdk/openjdk8-openj9:latest
# 设置工作目录
WORKDIR /home/webapps
# 复制指令,从上下文目录中复制文件或者目录到容器里指定路径。
COPY target/bill-admin.jar ./
# 为容器指定默认运行程序,从而使得容器像是一个单独的可执行程序
ENTRYPOINT ["java", "-jar","/home/webapps/bill-admin.jar"]
# 暴露容器中的端口
EXPOSE 18003

# Jenkins基础配置

# 通过SSH访问Gitee

cd ~/.ssh/
ssh-keygen -t rsa -C "longlongz@foxmail.com"

image-20230515143951193

​ 将id_jenkins.pub中的内容,添加到到Gitee的设置-安全设置-SSH公钥

在全局凭据中添加私钥

image-20230515145709327

点击Add Credentials

image-20230515145915115

勾选Enter directly ,然后点击Add

然后将刚刚生成的私钥内容复制进来,保存即可

image-20230515150019476

# 配置访问Harbor的帐号密码

# 新增凭据类型

image-20230517214622348

# 新增帐号密码

image-20230517214754931

# 添加插件

  • Docker Plugin
  • Version Number 构建复杂的版本号;安装完毕后在任务-配置-构建环境中会出现Create a formatted version number
  • docker-build-step

# 配置Docker服务

安装docker-build-step服务后,在系统管理-系统配置中设置docker url

image-20230518221210871

这里需要将修改/lib/systemd/system/docker.service文件

-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock添加至目标处

image-20230518220626139

这是访问本机,如果要访问其他系统,需要使用真实IP

# 配置流水线

# 命名

# 源码

image-20230515150719070

输入git项目的地址,选择刚刚创建的凭据

# 构建环境

image-20230518222409573

# 构建步骤

# Maven

image-20230517224718295

# Create/build Image

创建镜像

image-20230518225811944

# Tag image

给镜像打标签,用于上传

image-20230518233238590

最终的tag为:43.xxx.xxx.xxx:1xxx/bill-admin

# Push Image

推送镜像至Harbor

image-20230518234957619

# Remove image

tag image之后,会产生2个镜像,删除tag

image-20230518235622990

# 提交代码自动触发构建

# WebHook

image-20230515150910086

端口使用时需要替换成Jenkins实际的端口

image-20230515152235565

生成WebHook密码

# 配置Gitee

image-20230515153002336

# 测试

配置完毕后,可以点击测试按钮进行测试。返回200代表成功

image-20230515153051265

# 常见问题

# org.apache.maven.plugin.MojoExecutionException: Could not build image
chmod 777 /var/run/docker.sock
# harbor.yml文件修改后不起作用

进入harbor安装目录

# 停止容器并删除全部镜像,我这里只有harbor相关容器镜像,慎用,慎用,慎用,慎用,慎用
docker-compose down
# 重载生效
./prepare
# 开启所有容器
docker-compose up -d
上次更新: 2023/05/19 17:39:33