温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

drone-ci 部署

发布时间:2020-03-01 04:35:54 来源:网络 阅读:981 作者:大牙啊 栏目:系统运维

环境描述:

[root@ops-drone-cicd-1 drone]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@ops-drone-cicd-1 drone]# systemctl status firewalld.service

● firewalld.service - firewalld - dynamic firewall daemon

   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

   Active: inactive (dead)

     Docs: man:firewalld(1)

[root@ops-drone-cicd-1 drone]# getenforce

Disabled

gitlab前置配置:

drone-ci 部署

安装dockerdocker-compose

#!/bin/sh

 

# 安装docker

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

 

# 配置docker镜像加速器

mkdir -p /etc/docker

tee /etc/docker/daemon.json <<-'EOF'

{

  "registry-mirrors": ["https://z0t9e31x.mirror.aliyuncs.com"]

}

EOF

systemctl daemon-reload

systemctl restart docker

systemctl enable docker


# 安装docker-compose

wget -P /usr/local/bin/ -c http://私有镜像仓库/others/docker-compose

chmod +x /usr/local/bin/docker-compose

ln -s /usr/local/bin/docker-compose /usr/bin

我这里需要修改docker存储的路径,因为根下面磁盘比较小

systemctl stop docker.service

mv /var/lib/docker /data/

vi /usr/lib/systemd/system/docker.service

# 找到ExecStart这行,在后面加上--graph /data/docker

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --graph /data/docker

systemctl daemon-reload

systemctl start docker.service

docker info |grep Dir


drone-ci的服务端官方建议直接使用容器启动,但是容器启动管理不是很方便,大多数用docker-compose来管理:

[root@ops-drone-cicd-1 drone]# cat docker-compose.yaml

version: '3'

services:

    drone-server:

        image: drone/drone:latest

        container_name: drone-server

        ports:

            - 8090:80

        volumes:

            - /data/drone/drone-data:/var/lib/drone/

            - /etc/localtime:/etc/localtime

            - /var/run/docker.sock:/var/run/docker.sock

        restart: always

            - DRONE_SERVER_HOST=your.drone.com

            - DRONE_SERVER_PROTO=http

            - DRONE_TLS_AUTOCERT=false

            - DRONE_RUNNER_CAPACITY=2

            - DRONE_GIT_ALWAYS_AUTH=false

还有三个关键配置说啥不让发,这就截个图吧。。。

drone-ci 部署


nginx配置,用80来代理8090端口

upstream drone {

    server 127.0.0.1:8090;

}

 

server {

    listen 80;

    server_name your.drone.com;

 

    location / {

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-Proto $scheme;

        proxy_set_header X-Forwarded-For $remote_addr;

        proxy_redirect off;

        proxy_pass http://drone;

    }

}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI