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:9 depends_on: - postgres environment: FORGEJO__security__INSTALL_LOCK: "true" FORGEJO__log__LEVEL: "debug" FORGEJO__repository__ENABLE_PUSH_CREATE_USER: "true" FORGEJO__repository__DEFAULT_PUSH_CREATE_PRIVATE: "false" FORGEJO__repository__DEFAULT_REPO_UNITS: "repo.code,repo.actions" FORGEJO__server__ROOT_URL: https://${ROOT_URL} FORGEJO__server__SSH_DOMAIN: ${ROOT_URL} FORGEJO__server__SSH_PORT: 69 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} volumes: - ${ROOT_DIR}/forgejo_data:/data ports: - '${APP_PORT}:3000' - '${SSH_PORT}:22'