diff --git a/gitea-compose.yml b/gitea-compose.yml index 12fd9421..301df344 100644 --- a/gitea-compose.yml +++ b/gitea-compose.yml @@ -1,9 +1,26 @@ name: gitea -networks: -services: gitea: container_name: gitea - env_file: ./.env-gitea + depends_on: + gitea-db: + condition: service_healthy + required: true + environment: + - USER_UID=${PUID} + - USER_GID=${PGID} + - GITEA__database__DB_TYPE=postgres + - GITEA__database__HOST=gitea-db:5432 + - GITEA__database__NAME=gitea + - GITEA__database__USER=gitea + - GITEA__database__PASSWD=${GITEA_PG_DB_PASSWORD} + - GITEA__mailer__ENABLED=true + - GITEA__mailer__FROM='"Gitea" ' + - GITEA__mailer__PROTOCOL=smtp + - GITEA__mailer__SMTP_ADDR=postal-smtp + - GITEA__mailer__SMTP_PORT=25 + - GITEA__mailer__IS_TLS_ENABLED=faLse + - GITEA__mailer__USER=${POSTAL_SMTP_AUTH_USER} + - GITEA__mailer__PASSWD=${POSTAL_SMTP_AUTH_PASSWORD} image: gitea/gitea:1.22.2 labels: - homepage.group=Code @@ -35,8 +52,9 @@ services: volumes: - source: ${DOCKER_VOLUME_CONFIG}/gitea target: /data - type: volume - volume: {} + type: bind + bind: + create_host_path: true - bind: create_host_path: true read_only: true @@ -51,9 +69,18 @@ services: type: bind gitea-db: container_name: gitea-db - env_file: ./.env- + environment: + - POSTGRES_USER=gitea + - POSTGRES_PASSWORD=${GITEA_PG_DB_PASSWORD} + - POSTGRES_DB=gitea expose: - 5432 + healthcheck: + interval: 10s + start_period: 20s + test: + - CMD-SHELL + - pg_isready image: postgres:14 networks: default: null @@ -63,6 +90,69 @@ services: target: /var/lib/postgresql/data type: volume volume: {} + gitea-opengist: + container_name: gitea-opengist + environment: + OG_LOG_LEVEL: warn + OG_EXTERNAL_URL: https://gist.${MY_TLD} + OG_GIT_DEFAULT_BRANCH: "main" + OG_GITEA_CLIENT_KEY: ${OPENGIST_GITEA_CLIENT_KEY} + OG_GITEA_SECRET: ${OPENGIST_GITEA_SECRET} + OG_GITEA_URL: https://git.${MY_TLD} + OG_GITEA_NAME: "Gitea @ Rinoa" + image: ghcr.io/thomiceli/opengist:latest + labels: + homepage.description: Private Code Gists + homepage.group: Code + homepage.href: https://gist.${MY_TLD} + homepage.icon: /icons/opengist.svg + homepage.name: Opengist + swag: enable + swag.uptime-kuma.enabled: "true" + swag.uptime-kuma.monitor.url: https://gist.${MY_TLD} + swag_port: "6157" + swag_proto: http + swag_url: gist.${MY_TLD} + ports: + - "6157:6157" # HTTP port + - "2222:2222" # SSH port, can be removed if you don't use SSH + restart: always + volumes: + - ${DOCKER_VOLUME_CONFIG}/gitea/opengist:/opengist + gitea-runner: + container_name: gitea-runner + depends_on: + gitea: + condition: service_started + environment: + CONFIG_FILE: /config.yaml + DOCKER_HOST: tcp://dockerproxy:2375 + GITEA_INSTANCE_URL: http://gitea:3000 + GITEA_RUNNER_REGISTRATION_TOKEN: "${GITEA_RUNNER_REGISTRATION_TOKEN}" + GITEA_RUNNER_NAME: "gitea-runner-1" + image: gitea/act_runner:latest + networks: + default: null + ports: + - 63604:63604 + restart: always + volumes: + - ${DOCKER_VOLUME_CONFIG}/gitea/act-runner/config.yaml:/config.yaml + gitea-sonarqube-bot: + container_name: gitea-sonarqube-bot + depends_on: + gitea: + condition: service_started + sonarqube: + condition: service_started + image: justusbunsi/gitea-sonarqube-bot:v0.3.5 + environment: + GITEA_SQ_BOT_PORT: 58525 + GITEA_SQ_BOT_CONFIG_PATH: /home/bot/config/config.yaml + ports: + - 58525:58525 + volumes: + - ${DOCKER_VOLUME_CONFIG}/gitea/sonarqube-bot/:/home/bot/config/ volumes: gitea-pg-db: name: gitea-pg-db \ No newline at end of file diff --git a/gitea-env.example b/gitea-env.example index a52cf8bf..51d121c6 100644 --- a/gitea-env.example +++ b/gitea-env.example @@ -1,8 +1,11 @@ +CONFIG_FILE= +DOCKER_HOST= GITEA__database__DB_TYPE= GITEA__database__HOST= GITEA__database__NAME= GITEA__database__PASSWD= GITEA__database__USER= +GITEA_INSTANCE_URL= GITEA__mailer__ENABLED= GITEA__mailer__FROM= GITEA__mailer__IS_TLS_ENABLED= @@ -11,7 +14,17 @@ GITEA__mailer__PROTOCOL= GITEA__mailer__SMTP_ADDR= GITEA__mailer__SMTP_PORT= GITEA__mailer__USER= -GITEA_HOMEPAGE_API_KEY= +GITEA_RUNNER_NAME= +GITEA_RUNNER_REGISTRATION_TOKEN= +GITEA_SQ_BOT_CONFIG_PATH= +GITEA_SQ_BOT_PORT= +OG_EXTERNAL_URL= +OG_GIT_DEFAULT_BRANCH= +OG_GITEA_CLIENT_KEY= +OG_GITEA_NAME= +OG_GITEA_SECRET= +OG_GITEA_URL= +OG_LOG_LEVEL= POSTGRES_DB= POSTGRES_PASSWORD= POSTGRES_USER=