services:
  server:
    image: codeberg.org/forgejo/forgejo:10
    container_name: forgejo
    environment:
      - USER_UID=1000
      - USER_GID=1000
    restart: always
    networks:
      - forgejo
      - web
    volumes:
      - /mnt/storagebox_alpha/forgejo/data:/data
      - /opt/forgejo/ssh:/data/ssh:rw
      - /opt/forgejo/git-ssh:/data/git/.ssh:rw
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "8002:3000"
      - "222:22"
    depends_on:
      - db
  db:
    image: mysql:8
    container_name: forgejo-db
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=${FORGEJO_MYSQL_ROOT_PASSWORD}
      - MYSQL_USER=forgejo
      - MYSQL_PASSWORD=${FORGEJO_MYSQL_PASSWORD}
      - MYSQL_DATABASE=forgejo
    networks:
      - forgejo
    volumes:
      - /data/mysql/forgejo:/var/lib/mysql

networks:
  forgejo:
    external: false
  web:
    external: true