博客
关于我
『中级篇』docker之CI/CD持续集成-项目生成镜像(76)
阅读量:343 次
发布时间:2019-03-04

本文共 2076 字,大约阅读时间需要 6 分钟。

Harbor镜像仓库搭建与GitLab CI集成

搭建私有镜像仓库Harbor并集成GitLab CI,能够帮助开发团队更高效地管理和构建软件项目。以下是搭建Harbor和配置GitLab CI的完整步骤。

Harbor镜像仓库安装

1. 安装前准备

确保服务器环境满足Harbor的系统要求,包括:

  • CPU: 至少4核
  • 内存: 至少16GB
  • 存储: 至少50GB的可用空间
  • 网络: 公网IP或私有网络环境

2. 安装Harbor

通过Vagrant安装Harbor:

vagrant reload

下载Harbor安装包并解压:

sudo yum -y install lrzsztar xvf harbor-online-installer-v1.5.2.tgzcd harborsudo ./install.sh

3. 配置Harbor

执行以下命令完成Harbor的安装配置:

sudo ./preparesudo docker-compose up -d

4.访问Harbor

Harbor安装完成后,访问服务器IP地址:http://172.28.128.6

  • 用户名: admin
  • 密码: Harbor12345

Harbor镜像推送

1. 登录Harbor

使用以下命令登录Harbor:

sudo docker login 172.28.128.6 -u admin -p Harbor12345

2. 推送镜像

推送镜像时,确保镜像名称格式为<用户名>/<项目名>:<标签>

sudo docker tag busybox 172.28.128.6/idig8/busyboxsudo docker login 172.28.128.6 -u idig8 -p 123456789sudo docker push 172.28.128.6/idig8/busybox

GitLab CI与Harbor集成

1. 修改GitLab CI配置

编辑gitlab-ci.yml文件,添加以下内容:

stages:  - style  - test  - deploy  - releasepep8:  stage: style  script:    - pip install tox    - tox -e pep8tags:  - python2.7  except:    - tagsunittest-py27:  stage: test  script:    - pip install tox    - tox -e py27  tags:    - python2.7  except:    - tagsunittest-py34:  stage: test  script:    - pip install tox    - tox -e py34  tags:    - python3/4  except:    - tagsdocker-deploy:  stage: deploy  script:    - docker build -t flask-demo .    - docker rm -f web || true    - docker run -d -p 5000:5000 --name web flask-demo  tags:    - test1  only:    - masterdocker-image-release:  stage: release  script:    - docker login 172.28.128.6 -u idig8 -p 123456789    - docker build -t 172.28.128.6/idig8/flask-demo:$CI_COMMIT_TAG .    - docker login 172.28.128.6 -u idig8 -p 1qaz@WSX3edc    - docker push 172.28.128.6/idig8/flask-demo:$CI_COMMIT_TAG  tags:    - test1  only:    - tags

2. 触发CI流程

提交代码后,GitLab CI会自动触发流程:

  • 分支校验:流程校验分支,确保代码质量。
  • 构建镜像:构建Docker镜像并部署测试环境。
  • 镜像发布:根据CI标签发布镜像到Harbor。
  • 3. 自动化部署

    镜像发布后,自动化流程会将镜像打包并上传至Harbor,随后触发CI流程合并到主分支,自动执行部署任务。

    注意事项

    • 镜像版本控制:每个版本对应特定的标签,确保镜像可追溯。
    • 权限管理:合理分配Harbor的用户权限,确保镜像安全。
    • 自动化脚本:在CI脚本中添加镜像登录和推送权限,提升操作自动化水平。

    通过以上步骤,可以轻松搭建Harbor私有镜像仓库,并实现GitLab CI与Harbor的无缝集成,实现持续集成和镜像管理的高效化。

    转载地址:http://stpe.baihongyu.com/

    你可能感兴趣的文章
    php注册页面实现注册后跳转页面
    查看>>
    PHP消息队列的实现方式与详解,值得一看
    查看>>
    PHP混合Go协程并发
    查看>>
    php源码中如何添加滚动公告,给WordPress网站添加滚动公告的方法
    查看>>
    PHP源码安装后如何新增模块
    查看>>
    php源码详细安装步骤,linux下php源码安装步骤
    查看>>
    php漏洞tips
    查看>>
    php版Zencoding之 phpstorm
    查看>>
    PHP版本升级5.4手记
    查看>>
    php版本升级总结
    查看>>
    php版本微信公众号开发
    查看>>
    php版的微信公众号开发演示
    查看>>
    php生成html文件的多种方法介绍
    查看>>
    php生成二维码到图片上
    查看>>
    php生成二维码并下载图片(适应于框架)
    查看>>
    PHP生成及获取JSON文件的方法
    查看>>
    PHP生成唯一不重复的编号
    查看>>
    PHP生成器-动态生成内容的数组
    查看>>
    php用户量剧增导致cpu100%解决办法
    查看>>
    PHP的ip2long和long2ip升级函数
    查看>>