成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

初試drone1.0+gitea—docker安裝

aervon / 2057人閱讀

摘要:最近研究了一下,嘗試將和集合在一起,做服務(wù)官方是有說(shuō)明文檔,支持的,見的安裝文檔我個(gè)人安裝過(guò)程中碰了一些坑,在這里記下安裝過(guò)程。第二步的結(jié)果看到正常運(yùn)行,的服務(wù)就初步搭建起來(lái)了。至此,,部署安裝的步驟就完成了。

最近研究了一下drone,嘗試將drone1.0和gitea集合在一起,做CI服務(wù);drone官方是有說(shuō)明文檔,支持gitea的,見drone server的安裝文檔;我個(gè)人安裝過(guò)程中碰了一些坑,在這里記下安裝過(guò)程。

先上docker-compose.yml文件:

version: "3.6"
services:
  mysql:
    image: mysql:${MYSQL_VERSION}
    container_name: mysql
    ports:
      - "${MYSQL_HOST_PORT}:3306"
    volumes:
      - ${MYSQL_CONF_FILE}:/etc/mysql/conf.d/mysql.cnf:ro
      - ${MYSQL_DATA_DIR}:/var/lib/mysql/:rw
    restart: always
    networks:
      - default
    environment:
      MYSQL_ROOT_PASSWORD: "${MYSQL_ROOT_PASSWORD}"
      TZ: Asia/Shanghai

  gitea:
    image: gitea/gitea:latest
    container_name: gitea
    environment:
      TZ: Asia/Shanghai
    volumes:
      - /var/lib/gitea:/data
    restart: always
    networks:
      - default
    ports:
      - "10022:22"
      - "10080:3000"

  drone-server:
    image: drone/drone:latest
    container_name: drone-server
    ports:
      - "8080:80"
      - "8000:8000"
      - "9000:9000"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /dnmp/drone/:/var/lib/drone/:rw
    restart: always
    environment:
      - DRONE_GITEA_SERVER=http://192.168.88.190:10080
      #- DRONE_GITEA_SERVER=http://127.0.0.1:10080
      - DRONE_GIT_ALWAYS_AUTH=false
      - DRONE_RUNNER_CAPACITY=2
      - DRONE_SERVER_HOST=192.168.88.190
      - DRONE_SERVER_PROTO=http
      - DRONE_RPC_SECRET=9c3921e3e748aff725d2e16ef31fbc42
      - DRONE_TLS_AUTOCERT=false
      - DRONE_LOGS_DEBUG=true
      - TZ=Asia/Shanghai
    restart: always
    networks:
      - default

  drone-agent:
    image: drone/agent:latest
    container_name: drone-agent
    command: agent
    restart: always
    depends_on:
      - drone-server
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      #- DRONE_RPC_SERVER=http://192.168.88.190:9000
      - DRONE_RPC_SERVER=drone-server:9000
      - DRONE_RPC_SECRET=9c3921e3e748aff725d2e16ef31fbc42
      - DRONE_RUNNER_CAPACITY=2
      - DRONE_RUNNER_NAME=192.168.88.190
      - DRONE_LOGS_DEBUG=true
      - TZ=Asia/Shanghai
    restart: always
    #detach: true
    networks:
      - default

networks:
  default:

我的環(huán)境是本地虛擬機(jī)centos7,上面IP地址是虛擬機(jī)的ip地址。
因?yàn)間itea是采用mysql數(shù)據(jù)庫(kù),所以要啟動(dòng)一個(gè)msyql的容器服務(wù);通過(guò)命令docker-compose -f docker-compose.yml build命令先將鏡像構(gòu)建,其實(shí)都是用官方的鏡像,構(gòu)建這一步是很快的,只是做一個(gè)檢查;

然后docker-compose -f docker-compose.yml up -d 將容器運(yùn)行起來(lái),通過(guò)docker ps -a可以查看到容器的狀態(tài):


status這一欄都是正常的,表明服務(wù)就可以使用了。

先要配置gitea,通過(guò)http://192.168.88.190:10080/進(jìn)入gitea的web頁(yè)面,點(diǎn)擊登錄后,就會(huì)出現(xiàn)安裝向?qū)?,填寫信息,點(diǎn)擊安裝,等幾分鐘就ok了。安裝的細(xì)節(jié)稍微要注意填寫的地址和端口,容器內(nèi)部要填寫3000,對(duì)外開放的是10080。記住設(shè)置的管理員賬號(hào)和密碼,后面drone登錄時(shí)也要用到。

然后通過(guò)http://192.168.88.190:8080/進(jìn)入drone的web頁(yè)面,如下:


輸入剛才在gitea設(shè)置的管理員賬號(hào)和密碼,就可以登錄成功,就能看到如下頁(yè)面:

剛開始repositories是空的,點(diǎn)擊右上方的sync按鈕,等一分鐘就會(huì)自動(dòng)同步gitea項(xiàng)目過(guò)來(lái);同步過(guò)來(lái)的gitea倉(cāng)庫(kù),默認(rèn)狀態(tài)是沒開啟的。可以點(diǎn)擊setting頁(yè)面,進(jìn)入設(shè)置,如下:

填寫配置文件名字,默認(rèn)是.drone.yml。點(diǎn)擊save,就會(huì)開啟。點(diǎn)擊save的時(shí)候,drone會(huì)將配置信息同步給你的gitea,gitea項(xiàng)目那邊會(huì)響應(yīng),然后配置一個(gè)webhook,這里有個(gè)坑,后面再講。

順利的話,你在gitea項(xiàng)目添加.drone.yal后,就會(huì)觸發(fā)構(gòu)建,我在gitea倉(cāng)庫(kù)test下建的.drone.yml文件:

workspace:
  base: /go
  path: src/web_api

pipeline:
  build:
    image: golang    
    environment:
      TZ: Asia/Shanghai
    commands:
      - pwd
      - go env
      - date
      - go version
      - go build
      - ls -a

提交gitea后,查看drone的狀態(tài):


第一步是clone代碼,第二步是build,因?yàn)槲业?drone.yml超級(jí)簡(jiǎn)單,沒有后面的步驟,只是測(cè)試用的。第二步build的結(jié)果:

看到正常運(yùn)行,drone+gitea的服務(wù)就初步搭建起來(lái)了。后面通過(guò)在.drone.yml添加內(nèi)容和服務(wù),就能達(dá)到快速CI/CD的效果。

順便記錄一下踩的坑,剛開始我按照drone集成gitea的安裝文檔,將docker-compose.yml文件寫好,運(yùn)行docker-compose -f docker-compose.yml up -d 將容器運(yùn)行起來(lái),通過(guò)docker ps -a看到drone-server容器怎樣都起不來(lái),docker logs drone-server也看不出報(bào)錯(cuò)。

在網(wǎng)上找到drone+gitea的貼子,大部分都是drone0.8版本,鑒于此,我將drone的latest改為0.8,安裝0.8版本的配置,重新運(yùn)行,竟然跑起來(lái)了。跑起來(lái)后,我就摸索drone的配置和服務(wù),后面發(fā)現(xiàn)1.0版本有一些配置跟0.8不一樣,官方有說(shuō)明,但不明顯。見:

1.0版本跑不起來(lái)的配置,是因?yàn)閐rone-server的服務(wù),80端口沒對(duì)外開放,據(jù)我目前的了解,1.0版本默認(rèn)是開放80端口,我當(dāng)時(shí)按照0.8版本的端口,配置了"8000:8000"和"9000:9000",就差80端口,所以服務(wù)一直不正常。

這里也會(huì)涉及到gitea的webhook,上面說(shuō)的在drone將gitea設(shè)置為開啟狀態(tài)時(shí),這兩者會(huì)交互的,我們看下gitea的webhook:


drone關(guān)聯(lián)gitea項(xiàng)目時(shí),就會(huì)有添加這個(gè),但是端口不是8080,默認(rèn)是80,就是沒有端口的,類似:
http://192.168.88.190/hook?secret=TzY9LahcXEiQ8eoBDvqPYaw2VN5dJGG2
點(diǎn)擊修改,加上前面設(shè)置的端口8080,點(diǎn)擊保存,然后test 一下webhook,就能看到效果。

至此,drone1.0+gitea,docker部署安裝的步驟就完成了。

drone更多細(xì)節(jié),還有待繼續(xù)研究。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/27705.html

相關(guān)文章

  • 使用 Jenkins 自動(dòng)部署 Docker 服務(wù)(二、構(gòu)建部署篇)

    摘要:如果還沒有搭建好可以使用的,請(qǐng)先移步到這篇文章進(jìn)行搭建使用自動(dòng)部署服務(wù)一搭建篇目標(biāo)通過(guò)實(shí)現(xiàn)推送代碼后自動(dòng)部署基于的服務(wù)準(zhǔn)備工作獲取示例項(xiàng)目或者直接復(fù)制以下文件內(nèi)容獲取示例項(xiàng)目項(xiàng)目文件頁(yè)面文件鏡像文件部署文件部署腳本文件頁(yè)面文件項(xiàng)目很簡(jiǎn)單, 如果還沒有搭建好可以使用 Docker 的 Jenkins,請(qǐng)先移步到這篇文章進(jìn)行搭建 使用 Jenkins 自動(dòng)部署 Docker 服務(wù)(一、Je...

    denson 評(píng)論0 收藏0
  • 初試k8s,通過(guò)rancher自頂向下的學(xué)習(xí)kubernetes

    摘要:下面我想介紹另一種學(xué)習(xí)思路,自頂向下的學(xué)習(xí)。是通過(guò)虛擬機(jī)創(chuàng)建集群,支持多種虛擬機(jī),我這里用的。對(duì)內(nèi)或?qū)ν獗┞斗?wù)。和的控制器,通過(guò)配置的規(guī)則來(lái)管理。三個(gè)主要的命令行程序用了啟動(dòng)集群。需要在所以節(jié)點(diǎn)上運(yùn)行,處理集群內(nèi)部通訊,類似。 之前就玩過(guò)docker,但是一直不知道怎么把容器運(yùn)用到生產(chǎn)上。構(gòu)建一個(gè)docker鏡像,把他run起來(lái)很簡(jiǎn)單;難的是容器的部署(CICD),容器的網(wǎng)絡(luò),數(shù)據(jù)持...

    marser 評(píng)論0 收藏0
  • 初試k8s,通過(guò)rancher自頂向下的學(xué)習(xí)kubernetes

    摘要:下面我想介紹另一種學(xué)習(xí)思路,自頂向下的學(xué)習(xí)。是通過(guò)虛擬機(jī)創(chuàng)建集群,支持多種虛擬機(jī),我這里用的。對(duì)內(nèi)或?qū)ν獗┞斗?wù)。和的控制器,通過(guò)配置的規(guī)則來(lái)管理。三個(gè)主要的命令行程序用了啟動(dòng)集群。需要在所以節(jié)點(diǎn)上運(yùn)行,處理集群內(nèi)部通訊,類似。 之前就玩過(guò)docker,但是一直不知道怎么把容器運(yùn)用到生產(chǎn)上。構(gòu)建一個(gè)docker鏡像,把他run起來(lái)很簡(jiǎn)單;難的是容器的部署(CICD),容器的網(wǎng)絡(luò),數(shù)據(jù)持...

    tinyq 評(píng)論0 收藏0
  • 初試k8s,通過(guò)rancher自頂向下的學(xué)習(xí)kubernetes

    摘要:下面我想介紹另一種學(xué)習(xí)思路,自頂向下的學(xué)習(xí)。是通過(guò)虛擬機(jī)創(chuàng)建集群,支持多種虛擬機(jī),我這里用的。對(duì)內(nèi)或?qū)ν獗┞斗?wù)。和的控制器,通過(guò)配置的規(guī)則來(lái)管理。三個(gè)主要的命令行程序用了啟動(dòng)集群。需要在所以節(jié)點(diǎn)上運(yùn)行,處理集群內(nèi)部通訊,類似。 之前就玩過(guò)docker,但是一直不知道怎么把容器運(yùn)用到生產(chǎn)上。構(gòu)建一個(gè)docker鏡像,把他run起來(lái)很簡(jiǎn)單;難的是容器的部署(CICD),容器的網(wǎng)絡(luò),數(shù)據(jù)持...

    jemygraw 評(píng)論0 收藏0
  • 初試 Helm 3

    摘要:但此功能目前并不直接可用相關(guān)也已經(jīng)創(chuàng)建。根源在于參數(shù)的獲取實(shí)現(xiàn)上。省略輸出可以看到,這個(gè)名稱可以在這個(gè)中重復(fù)使用了。比如省略輸出支持將推送至鏡像倉(cāng)庫(kù)中簡(jiǎn)而言之就是使用鏡像倉(cāng)庫(kù)同時(shí)存儲(chǔ)鏡像和不過(guò)這個(gè)功能我暫時(shí)還沒驗(yàn)證。 經(jīng)過(guò)了長(zhǎng)時(shí)間的開發(fā),Helm 3 終于在今天發(fā)布了第一個(gè) alpha 版本。本文將簡(jiǎn)單介紹 Helm 3 新特性。 移除 Tiller Helm 2 是 C/S 架構(gòu),主...

    superPershing 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<