1.
docker run \
--volume=/var/lib/drone:/data \
--env=DRONE_GITHUB_CLIENT_ID=d3374878e302109d96ff \
--env=DRONE_GITHUB_CLIENT_SECRET=72c0a420af99adf4925b44588f2684b2947c8453 \
--env=DRONE_RPC_SECRET=a99ad07e4903c65546294ab6f7397bc1 \
--env=DRONE_SERVER_HOST=192.168.115.129 \
--env=DRONE_SERVER_PROTO=http \
--env=DRONE_USER_CREATE=username:pythonohtyp,admin:true \ #用户名为管理员的账户名,并设置为drone的管理员
--publish=80:80 \
--publish=443:443 \
--restart=always \
--detach=true \
--name=drone \
drone/drone:1
docker run -d \
-v /var/run/docker.sock:/var/run/docker.sock \
-e DRONE_RPC_PROTO=http \
-e DRONE_RPC_HOST=192.168.115.129 \
-e DRONE_RPC_SECRET=a99ad07e4903c65546294ab6f7397bc1 \
-e DRONE_RUNNER_CAPACITY=2 \
-e DRONE_RUNNER_NAME=runner \
-p 3000:3000 \
--restart always \
--name runner \
drone/drone-runner-docker:1
gitlab
.drone.yml示例
加了.m2目录的缓存,下一次构建更快
kind: pipeline
type: kubernetes #runner在k8s内
name: java
clone:
disable: true #跳过默认的克隆操作,(该操作只用在代码库地址为ip时或者域名解析不到(minikube内部dns解析不到外部的自定义域名)时使用)
steps:
- name: clone
image: alpine/git
commands:
- git clone http://gogs.kaka.com:3000/kaka/simple-java-maven-app.git .
- git checkout $DRONE_COMMIT
- name: build
image: maven:3.6.0-jdk-8-alpine
volumes:
- name: cache
path: /root/.m2
commands:
- mvn -B -DskipTests clean package
- ls -l /root/.m2/repository/org
volumes: #如果启动不设置-env=DRONE_USER_CREATE=username:kaka,admin:true,并且drone页面没勾选Trusted,构建时提示报错,没有权限挂载主机目录!!!!!!!
- name: cache
host:
path: /tmp/cache/.m2
trigger:
branch:
- master