version: "3.8" networks: gitea: external: false services: gitea: restart: always image: gitea/gitea:latest container_name: gitea environment: - USER_UID=${UID} - USER_GID=${GID} - GITEA__database__DB_TYPE=mysql - GITEA__database__HOST=gitea-db:3306 - GITEA__database__NAME=${GITEA_DB_NAME} - GITEA__database__USER=${GITEA_DB_USER} - GITEA__database__PASSWD=${GITEA_DB_PASS} networks: - gitea volumes: - ${DATA_PATH}/gitea/data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "${GITEA_HTTP_PORT}:3000" - "${GITEA_SSH_PORT}:22" - "${GITEA_SSH_LOCAL_PORT}:22" depends_on: - gitea-db gitea-db: image: mysql:8 container_name: gitea-db restart: always environment: - MYSQL_ROOT_PASSWORD=${GITEA_DB_ROOT_PASS} - MYSQL_USER=${GITEA_DB_USER} - MYSQL_PASSWORD=${GITEA_DB_PASS} - MYSQL_DATABASE=${GITEA_DB_NAME} networks: - gitea volumes: - ${DATA_PATH}/gitea/mysql:/var/lib/mysql gitea-runner: image: gitea/act_runner:nightly container_name: gitea-runner environment: CONFIG_FILE: /config.yaml GITEA_INSTANCE_URL: "${GITEA_URL}" GITEA_RUNNER_REGISTRATION_TOKEN: "${GITEA_RUNNER_TOKEN}" GITEA_RUNNER_NAME: "${GITEA_RUNNER_NAME}" volumes: - ${DATA_PATH}/gitea/runner/config.yaml:/config.yaml - ${DATA_PATH}/gitea/runner/data:/data - /var/run/docker.sock:/var/run/docker.sock