version: "3" networks: gitea: external: false services: server: image: docker.gitea.com/gitea:1.23.8 container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=mysql - GITEA__database__HOST=db:3306 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea restart: always networks: - gitea volumes: - /mnt/vfs/gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "222:22" depends_on: - db db: image: docker.io/library/mysql:8 restart: always environment: - MYSQL_ROOT_PASSWORD=gitea - MYSQL_USER=gitea - MYSQL_PASSWORD=gitea - MYSQL_DATABASE=gitea networks: - gitea volumes: - /mnt/vfs/mysql:/var/lib/mysql nginx: image: nginx:latest restart: always ports: - "80:80" - "443:443" volumes: - ./nginx/gitea.conf:/etc/nginx/conf.d/gitea.conf:ro - ./ssl:/etc/letsencrypt:ro # optional, if using Let's Encrypt depends_on: - server networks: - gitea