国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

記錄使用gitlab實現Docker自動化部署

這篇具有很好參考價值的文章主要介紹了記錄使用gitlab實現Docker自動化部署。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

前言

一、gitlab-runner docker安裝

二、gitlab-runner的注冊與使用

1.注冊

2. .gitlab-ci.yml 腳本編寫

總結


前言

前面搭建了gitlab與harbor ,現在就使用它們來實現自動化docker部署。所謂自動化部署,就是提交代碼到指定分支時自動觸發(fā)預先寫好的腳本,來實現打包,推送鏡像。想要實現這個功能還需要安裝gitlab-runner,下面就是記錄相關步驟的流程。

一、gitlab-runner docker安裝

這里仍然是docker-compose的形式來安裝,內容如下:

version: "3"
services:
  gitlab-runner:
    image: "gitlab/gitlab-runner:latest"
    container_name: gitlab-runner
    restart: always
    privileged: true
    volumes:
      - "./data/gitlab-runner/config:/etc/gitlab-runner"
      - "/var/run/docker.sock:/var/run/docker.sock"

重點:這里將內部的docker 掛載出來的路勁一定是虛機中安裝的docker路徑,因為要在內部調用外部的docker來執(zhí)行命令,如果不匹配就無法調用。

在docker-compose.yml 文件夾內執(zhí)行安裝命令后等待安裝完成就可以了

二、gitlab-runner的注冊與使用

1.注冊

注冊也是很簡單,下面提供代碼,在安裝gitlab-runner的虛擬機中執(zhí)行
?

sudo docker exec gitlab-runner gitlab-runner register -n \
       --url http://192.168.31.8:15482/ \           #gitlab 的ip端口
       --registration-token APRduxxLs6qye_A_K47y \  # gitlab 上的token
       --tag-list "global-runner,gitlab-test" \
       --executor docker \
       --docker-image docker \
       --docker-image alpine:latest \
       --docker-volumes /home/msq/gitlab-runner/.m2:/root/.m2 \
       --docker-volumes /home/msq/gitlab-runner/.npm:/root/.npm \
       --docker-volumes /var/run/docker.sock:/var/run/docker.sock \ #掛載出來的docker
       --description "global-runner,gitlab-test"

記錄使用gitlab實現Docker自動化部署

?執(zhí)行之后這里多出綠色圓點在線,表示注冊成功 了,gloabl-runner ,gitlab-test 表示tag 標簽,只有用到該標簽的腳本才會執(zhí)行

2. .gitlab-ci.yml 腳本編寫

該腳本我們可以在gitlab 項目下進入CI/CD 的編輯器,選擇分支,點擊配置就會自動創(chuàng)建

記錄使用gitlab實現Docker自動化部署

這是我的,我是配置在test分支上?

記錄使用gitlab實現Docker自動化部署

在這里我們可以編輯腳本,也可以點擊瀏覽模板進入github上學習官方的一些模板

我這里的腳本如下:

image: docker:stable
variables:
  TAG: wxdt:0.0.1
  PROJECT_NAME: wxdt
  MAVEN_OPTS: "-Dmaven.repo.local=/root/.m2/repository"
cache:
  key: dockerlayer-ci-cache
  paths:
    - .m2/repository
    - /target/wxdt.jar
stages:
  - package
  - deploy
  - push-image
maven-package:
  image: maven:3.5-jdk-8-alpine
  stage: package
  tags:
    - gitlab-test
  script:
    - mvn clean package -Dmaven.test.skip=true -P test $MAVEN_OPTS --settings=/root/.m2/settings.xml
  cache:
    key: dockerlayer-ci-cache
    paths:
      - target/*.jar
  only:
    - test
build-test:
  stage: deploy
  tags:
    - gitlab-test
  cache:
    key: dockerlayer-ci-cache
    paths:
      - .m2/repository/
      - target/*.jar 
  script:
    - docker build -t $TAG .
    - docker rm -f $PROJECT_NAME || true
    - docker run -d --name $PROJECT_NAME --restart=always -v /home/msq/公共/msq/logs/wxdt:/logs -p 18082:18082 $TAG
  after_script:
    - docker rmi $(docker images -f "dangling=true" -q)  
  only:
    - test
docker-push:
  stage: push-image
  tags: 
    - gitlab-test
  before_script:
    - docker login http://192.168.31.22 -u admin -p Harbor12345  
  script: 
    - docker tag $TAG 192.168.31.22/msq/$TAG
    - docker push 192.168.31.22/msq/$TAG
  only: 
    - test






    

簡單說明一下,我這里是三個步驟,maven打包 --》docker 啟動 --》鏡像推送倉庫

腳本執(zhí)行的頁面如下:

記錄使用gitlab實現Docker自動化部署

?點擊進入可以看到執(zhí)行日志

記錄使用gitlab實現Docker自動化部署

?推送成功后我們到倉庫中看到,下面就是推送成功了

記錄使用gitlab實現Docker自動化部署

?項目是否執(zhí)行成功進入虛機中執(zhí)行docker ps 查看

記錄使用gitlab實現Docker自動化部署

?可以看到項目在docker中運行成功了,可查看日志docker logs -f wxdt

記錄使用gitlab實現Docker自動化部署

?


總結

興趣是學習的最好的動力,再接再厲,繼續(xù)深入研究。文章來源地址http://www.zghlxwxcb.cn/news/detail-409985.html

到了這里,關于記錄使用gitlab實現Docker自動化部署的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Jenkins+GitLab+Docker搭建前端自動化構建鏡像容器部署(無本地證書,映射證書)

    Jenkins+GitLab+Docker搭建前端自動化構建鏡像容器部署(無本地證書,映射證書)

    前言 ?? 需提前安裝環(huán)境及知識點: 1、Docker搭建及基礎操作 2、DockerFile文件描述 3、Jenkins搭建及基礎點 ?? 目的: 將我們的前端項目打包成一個鏡像容器并自動發(fā)布部署,可供隨時pull訪問 1、在當前項目的根目錄創(chuàng)建Dockerfile文件并寫入如下代碼: 代碼片段詳細描述: 注意

    2024年02月15日
    瀏覽(23)
  • .NET Core部署到linux(CentOS)最全解決方案,入魔篇(使用Docker+Jenkins實現持續(xù)集成、自動化部署)

    .NET Core部署到linux(CentOS)最全解決方案,入魔篇(使用Docker+Jenkins實現持續(xù)集成、自動化部署)

    通過前面三篇: .NET Core部署到linux(CentOS)最全解決方案,常規(guī)篇 .NET Core部署到linux(CentOS)最全解決方案,進階篇(Supervisor+Nginx) .NET Core部署到linux(CentOS)最全解決方案,高階篇(Docker+Nginx 或 Jexus) 通過前面三篇文章的介紹,我們已經對.net core多方案部署到linux下有了非常全面的認識

    2024年02月02日
    瀏覽(50)
  • docker+jenkins 實現自動化部署

    docker+jenkins 實現自動化部署

    工欲善其事必先利其器,所以前期的準備工作必須做好,那么我們要實現自動化部署,必須提前準備什么呢?哈哈哈,可能有一些小伙伴已經猜到了,我們需要一臺自己的服務器,這里博主使用的自己夠買一臺騰訊云的輕量服務器,折扣完了才一百多塊錢,當然小伙伴也可以

    2024年02月06日
    瀏覽(45)
  • 【Jenkins+Gitlab自動化部署配置】

    以下為整理當初參照的博客 阿里云云服務器 ECS 手動搭建GitLab避坑教程 博客文中的鏡像源地址已換 Gitlab忘記root用戶密碼的解決辦法 Gitlab學習筆記(一):基于Ubuntu的gitlab的私有服務搭建(超詳細) Jenkins 構建報錯:Couldn‘t find any revision to build. Verify the repository and branch conf

    2024年02月21日
    瀏覽(50)
  • Gitlab+Jenkins自動化部署,解放雙手

    Gitlab+Jenkins自動化部署,解放雙手

    ? 在部署項目前需要對源碼進行打包,一個簡單的SpringBoot項目默認是打包為jar包,也就是在pom.xml中的 packagingjar/packaging 方式,當然也會有一些打包成war包方式,使用外置的Tomcat應用服務器部署war包,那么就是 packagingwar/packaging 。 在父子類聚合項目中,父工程的 pom.xml 文件中

    2024年02月07日
    瀏覽(32)
  • Jenkins+Docker 實現一鍵自動化部署項目

    Jenkins+Docker 實現一鍵自動化部署項目

    1.安裝Jenkins 注:因為Jenkins容器里的用戶是Jenkins,而主機用戶不是Jenkins,就算是root也一樣會報錯:/var/jenkins_home/copy_reference_file.log: Permission denied,這個時候就需要在主機上面給主機地址賦予訪問Jenkins容器的權限,Jenkins內部用的是uid 1000的user。 -privileged=true讓容器具有root權限

    2024年02月16日
    瀏覽(31)
  • Docker + Jenkins + Nginx實現前端自動化部署

    Docker + Jenkins + Nginx實現前端自動化部署

    文章有點長,如果你是以學習的態(tài)度來看這篇文章,建議收藏起來慢慢看。 前端自動化部署一直以來概念很清楚知道怎么回事,但是其中怎么操作沒怎么研究過,雖然之前環(huán)境都搭起來了,但是也只是Jenkins構建項目成功,比如提交代碼之后怎么觸發(fā)自動構建,打包后的文件

    2024年02月05日
    瀏覽(22)
  • 【git】2、gitlab CICD 模型部署自動化

    【git】2、gitlab CICD 模型部署自動化

    GitLab 是一個用于倉庫管理系統的開源項目,使用 Git 作為代碼管理工具,并在此基礎上搭建起來的 Web 服務。 安裝方法是參考 GitLab 在 GitHub 上的 Wiki 頁面。Gitlab 是被廣泛使用的基于 git 的開源代碼管理平臺, 基于 Ruby on Rails 構建, 主要針對軟件開發(fā)過程中產生的代碼和文檔進

    2024年02月04日
    瀏覽(48)
  • jenkins+docker實現可持續(xù)自動化部署springboot項目

    目錄 一、前言 二、微服務帶來的挑戰(zhàn) 2.1 微服務有哪些問題

    2024年04月15日
    瀏覽(42)
  • Jenkins+Maven+Gitlab+Tomcat 自動化構建打包,部署

    Jenkins+Maven+Gitlab+Tomcat 自動化構建打包,部署

    1、安裝服務 Jenkins工具、環(huán)境、插件配置 全局變量配置 Manage JenkinstoolsJDK 安裝 安裝插件 Deploy to container 安裝此插件,才能將打好的包部署到tomcat上 ? ? 配置國內mvn源 創(chuàng)建maven項目 1 ?2 ? 3? ? 4? ? 5? ? 6? ? 7? ? 8? ? ?9 10 ?

    2024年02月05日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包