1、开发环境的安装:

笔者在安装过程中,出现了版本问题,所以,在这里做出提醒,要是安装不成功,爆出版本问题,执行下面的命令,命令的来源是这里:Install Docker Engine on CentOS | Docker Docs

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

笔者应用的是Linux环境,所以,接下来的步骤全是在Linux的环境下进行的:

安装Docker:(CV集体操作就好了)

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo yum list docker-ce --showduplicates | sort -r
sudo systemctl start docker
sudo systemctl status docker
sudo systemctl enable docker
docker version

(PS:在执行完docker version之后,应当显示docker的版本类型)、

2、配置Docker

# 以非 root 用户身份使用 docker
sudo usermod -aG docker $USER   # $USER 是当前登录的用户
                                                         # 此命令执行后,需注销,重新登录,才生效

                                                         #PS:logout

# 使用阿里 docker 镜像,提高镜像拉取速度
sudo mkdir -p /etc/docker


sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://v0yaxj7c.mirror.aliyuncs.com"]
}
EOF


systemctl daemon-reload
systemctl restart docker
 

3、搭建gogs-drone持续集成环境

(1)start gogs

sudo docker run -d \
  -e TZ="Asia/Shanghai" \
  -v /data  \
  --net host \
  --restart=always \
  --name=gogs \
  gogs/gogs:0.11.29

此处是gitbook的安装

创建新的目录

mkdir e-books

cd e-books

nvm ls

nvm use v10.5.0

nvm ls

npm install gitbook-cli -g

初始化操作:gitbook init

启动电子书访问:

gitbook serve --port=8080

ifconfig查看虚拟机的ip地址

  • gogs use v0.11.29, latest version webhook not work
  • 默认端口为 3000,使用宿主的 IP 地址访问 gogs 服务
  • 配置 gogs,使用 sqllite 数据库
  • 注册创建账户 wangding,第一个账户默认为管理员账户
  • 创建空的测试仓库 demo
  • 克隆 demo 仓库,git clone http://192.168.174.133:3000/wangding/demo.git(用你自己的端口地址)
  • cd demo && echo 'hello' > a.txt
  • git add .
  • git commit -m "add a.txt"
  • git push
  • 检查 gogs 上的 demo 仓库,有最新的提交

(2)start drone

sudo docker run -d \
  -v /data \
  -e DRONE_AGENTS_ENABLED=true \
  -e DRONE_GOGS_SERVER=http://192.168.174.133:3000 \
  -e DRONE_RPC_SECRET=mydrone666 \
  -e DRONE_SERVER_HOST=192.168.174.133:8888 \
  -e DRONE_SERVER_PROTO=http \
  -e DRONE_USER_CREATE=username:wangding,admin:true \
  -e TZ="Asia/Shanghai" \
  -p 8888:80 \
  --restart=always \
  --name=drone \
  drone/drone:1
 

  • 注意 DRONE_GOGS_SERVER 和 DRONE_SERVER_HOST 两个参数的 IP 地址,使用宿主的 IP 地址
  • 端口号是 8888
  • 访问 drone 服务,http://192.168.174.133:8888(用你自己的端口地址)
  • 用 gogs 的 wangding 账户登录
  • 可以看到 demo 仓库,激活 demo 仓库的自动化构建,勾选 project setting: trusted,允许 runner 构建 docker 镜像
  • 检查 gogs demo 仓库的 webhook 配置,drone 自动添加了 webhook 配置

(3)start drone-runner

sudo docker run -d \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e DRONE_RPC_PROTO=http \
  -e DRONE_RPC_HOST=192.168.174.133:8888 \
  -e DRONE_RPC_SECRET=mydrone666 \
  -e DRONE_RUNNER_CAPACITY=2 \
  -e DRONE_RUNNER_NAME=runner-docker \
  -e TZ="Asia/Shanghai" \
  -p 9999:3000 \
  --restart=always \
  --name=runner-docker \
  drone/drone-runner-docker:1
 

  • 注意 DRONE_RPC_HOST 参数的 IP 地址,使用宿主的 IP 地址
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐