Преглед изворни кода

Add Compose file only for Drone Server and Agent

Benoît Hubert пре 3 година
родитељ
комит
7d1dc7e549
2 измењених фајлова са 60 додато и 0 уклоњено
  1. 43 0
      docker-compose.drone.prod.yml
  2. 17 0
      drone-prod-sample-env

+ 43 - 0
docker-compose.drone.prod.yml

@@ -0,0 +1,43 @@
+version: "3.7"
+
+networks:
+  gitea:
+    external: false
+
+services:
+
+  drone_server:
+    image: drone/drone:2
+    container_name: drone
+    networks:
+      - gitea
+    volumes: 
+      - ./drone-server:/data
+    environment:
+      - DRONE_AGENTS_ENABLED=true
+      - "DRONE_GOGS_SERVER=${DRONE_GOGS_SERVER}"
+      - "DRONE_RPC_SECRET=${DRONE_RPC_SECRET}"
+      - "DRONE_SERVER_HOST=${DRONE_SERVER_HOST}"
+      - "DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO}"
+    ports:
+      - "${EXPOSED_DRONE_PORT_SERVER}:80"
+    restart: always
+  
+  drone_runner:
+    image: drone/drone-runner-docker:1
+    container_name: runner
+    networks:
+      - gitea
+    volumes:
+      - /var/run/docker.sock:/var/run/docker.sock
+    environment:
+      - "DRONE_RPC_PROTO=${DRONE_SERVER_PROTO}"
+      - "DRONE_RPC_HOST=${DRONE_SERVER_HOST}"
+      - "DRONE_RPC_SECRET=${DRONE_RPC_SECRET}"
+      - DRONE_RUNNER_CAPACITY=2
+      - DRONE_RUNNER_NAME=my-runner
+      - "DRONE_UI_USERNAME=${DRONE_UI_USERNAME}"
+      - "DRONE_UI_PASSWORD=${DRONE_UI_PASSWORD}"
+    ports:
+      - "${EXPOSED_DRONE_PORT_AGENT}:3000"
+    restart: always

+ 17 - 0
drone-prod-sample-env

@@ -0,0 +1,17 @@
+# Sample env file for Drone Server/Agent setup with Docker Compose
+
+# For Drone server: URL of Gogs instance
+DRONE_GOGS_SERVER=https://gogs.server.com
+
+# Shared by Drone server and agent
+DRONE_RPC_SECRET="Result of `openssl rand -hex 16`"
+DRONE_SERVER_HOST=drone.domain.tld
+DRONE_SERVER_PROTO=https
+
+# For Drone agent
+DRONE_UI_USERNAME=BasicHttpAuthUsername
+DRONE_UI_PASSWORD=BasicHttpAuthPassword
+
+# For ports exposed by Docker
+EXPOSED_DRONE_PORT_SERVER=
+EXPOSED_DRONE_PORT_AGENT=