commit d69d6337a24a254c80588558d3e3ce5dc7182edc Author: Andrei Stoica Date: Sat May 20 08:33:25 2023 -0400 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c49bd7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.env diff --git a/README.md b/README.md new file mode 100644 index 0000000..3389d6b --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# Self Hosted environment for coding +A quick docker compose to spin up tools for hosting your own git environment. + +# Starting up + +Copy `example.env` to `.env` and fill in all secrets. +Refer to Drone-CI documentation on +[server](https://docs.drone.io/server/overview/) and +[runner](https://docs.drone.io/runner/overview) for more information. + +Run with docker copose +```sh +docker compose up -d +``` + +## Roadmap +- [X] CI environment (Done) +- [ ] Git server (Gitea) - need to migrate current install to docker environment diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..9d346e2 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,32 @@ +version: '3' + +services: + server: + image: drone/drone:2 + restart: always + environment: + DRONE_SERVER_HOST: ${SERVER_HOST}:${SERVER_PORT} + DRONE_SERVER_PROTO: http + DRONE_GITEA_SERVER: ${DRONE_GITEA_SERVER} + DRONE_GITEA_CLIENT_ID: ${DRONE_GITEA_CLIENT_ID} + DRONE_GITEA_CLIENT_SECRET: ${DRONE_GITEA_CLIENT_SECRET} + DRONE_RPC_SECRET: ${DRONE_RPC_SECRET} + DRONE_USER_CREATE: ${DRONE_USER_CREATE} + ports: + - "${SERVER_PORT}:80" + volumes: + - /var/lib/drone:/data + + runner: + image: drone/drone-runner-docker:1 + restart: always + environment: + DRONE_RPC_PROTO: http + DRONE_RPC_HOST: server + DRONE_RPC_SECRET: ${DRONE_RPC_SECRET} + DRONE_RUNNER_CAPACITY: 2 + DRONE_RUNNER_NAME: my-docker-runner + ports: + - "${RUNNER_PORT}:3000" + volumes: + - /var/run/docker.sock:/var/run/docker.sock diff --git a/example.env b/example.env new file mode 100644 index 0000000..acbc388 --- /dev/null +++ b/example.env @@ -0,0 +1,8 @@ +SERVER_PORT= +RUNNER_PORT= +SERVER_HOST= +DRONE_GITEA_SERVER= +DRONE_GITEA_CLIENT_ID= +DRONE_GITEA_CLIENT_SECRET= +DRONE_RPC_SECRET= +DRONE_USER_CREATE=