Files
docker-compose/gitea/docker-compose-mariadb.yml

56 lines
1.5 KiB
YAML

services:
gitea_db:
container_name: gitea_db
image: docker.io/library/mariadb:11.8.2
restart: unless-stopped
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
volumes:
- ${APPDATA_PATH}/gitea/db:/var/lib/mysql
ports:
- ${DB_PORT}:3306
networks:
- backend
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
start_period: 10s
interval: 10s
timeout: 5s
retries: 3
gitea_server:
container_name: gitea_server
image: docker.io/gitea/gitea:1.24.2-rootless
restart: unless-stopped
depends_on:
gitea_db:
condition: service_healthy
user: ${PUID}:${PGID}
environment:
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=gitea_db:3306
- GITEA__database__NAME=${MYSQL_DATABASE}
- GITEA__database__USER=${MYSQL_USER}
- GITEA__database__PASSWD=${MYSQL_PASSWORD}
volumes:
- ${APPDATA_PATH}/gitea/config:/etc/gitea
- ${APPDATA_PATH}/gitea/data:/var/lib/gitea
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- ${SERVER_PORT}:3000
- ${SSH_PORT}:22
networks:
- frontend
- backend
networks:
frontend:
external: true
backend:
external: true