version: "3"
services:
db:
container_name: gitfoss_db
image: postgres:14
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d gitfoss_local"]
interval: 5s
timeout: 3s
retries: 3
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=postgres
ports:
- 5432:5432
volumes:
- ./data/postgres_data:/var/lib/postgresql/data
web:
container_name: gitfoss_web
build:
context: .
dockerfile: Dockerfile
args:
- HOST=0.0.0.0
- PORT=1337
depends_on:
- db
ports:
- 1337:1337
- 22:22
volumes:
- ./data/gitfoss_repos:/var/lib/gitfoss/repos
- ./data/gitfoss_repos:/home/git/repos
- ./data/authorized_keys:/home/git/.ssh/authorized_keys
env_file: .env.docker
# environment:
# - COOKIE_NAME=gitfoss_ssid
# - COOKIE_SECRET=gitfoss-cookie-secret
# - DATABASE_URL=postgresql://postgres:postgres@gitfoss_db:5432/gitfoss_local?sslmode=disable&connection_limit=3
# - DEPLOYMENT_DOMAIN=local-app.localhost
# - DEPLOYMENT_SCHEME=http
# - GIT_REPOSITORIES_ROOT=/var/lib/gitfoss/repos
# git_ssh:
# container_name: gitfoss_git_ssh
# build:
# context: .
# dockerfile: Dockerfile.git-ssh
# depends_on:
# - web
# ports:
# - 22:22
# volumes:
# - ./data/gitfoss_repos:/var/lib/gitfoss/repos
# - ./data/gitfoss_repos:/home/git/repos
# - ./data/authorized_keys:/home/git/.ssh/authorized_keys
# env_file: .env.docker