services: postgres: image: postgres:17-alpine environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: forgejo volumes: - ${ROOT_DIR}/postgres_data:/var/lib/postgresql/data server: image: codeberg.org/forgejo/forgejo:10 depends_on: - postgres environment: FORGEJO__security__INSTALL_LOCK: "true" FORGEJO__log__LEVEL: "debug" # Repos FORGEJO__repository__ENABLE_PUSH_CREATE_USER: "true" FORGEJO__repository__DEFAULT_PUSH_CREATE_PRIVATE: "false" FORGEJO__repository__DEFAULT_REPO_UNITS: "repo.code,repo.actions" # Server FORGEJO__server__ROOT_URL: https://${ROOT_URL} FORGEJO__server__SSH_DOMAIN: ${ROOT_URL} FORGEJO__server__SSH_PORT: ${SSH_PORT} FORGEJO__server__START_SSH_SERVER: false # PostgreSQL configuration FORGEJO__database__DB_TYPE: postgres FORGEJO__database__HOST: postgres:5432 FORGEJO__database__NAME: forgejo FORGEJO__database__USER: ${POSTGRES_USER} FORGEJO__database__PASSWD: ${POSTGRES_PASSWORD} FORGEJO__service_DISABLE_REGISTRATION: true # Federation FORGEJO__federation_ENABLED: true volumes: - ${ROOT_DIR}/forgejo_data:/data ports: - "${APP_PORT}:3000" - "${SSH_PORT}:22"