commit 174b09284e8f581ce62f3b4f1bd54e97cc543ffd Author: leo <426742@gmail.com> Date: Sun Jul 14 23:21:51 2024 +0000 create diff --git a/README.md b/README.md new file mode 100644 index 0000000..3b058e4 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ + +### Gitea \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..3218b61 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,72 @@ +services: + gitea: + image: gitea/gitea:1.22.0 + container_name: gitea + env_file: + - ./secrets/vars.env + environment: + - APP_NAME="Gitea" + - USER_UID=1000 + - USER_GID=1000 + - USER=git + - RUN_MODE=prod + - DOMAIN=git.${DOMAIN} + + - SSH_DOMAIN=git.${DOMAIN} + - HTTP_PORT=3000 + - ROOT_URL=https://git.${DOMAIN} + - SSH_PORT=222 + - SSH_LISTEN_PORT=22 + - GITEA__cache__ENABLED=true + - GITEA__cache__ADAPTER=redis + - GITEA__cache__HOST=redis://gitea-cache:6379/0?pool_size=100&idle_timeout=180s + - GITEA__cache__ITEM_TTL=24h + + - GITEA__database__DB_TYPE=postgres + - GITEA__database__HOST=postgres:5432 + - GITEA__database__NAME=gitea + - GITEA__database__USER=gitea + - GITEA__database__PASSWD=${GITEA_DB_PW} + restart: always + networks: + - proxynet + depends_on: + gitea-cache: + condition: service_started + labels: + - "traefik.enable=true" + - "traefik.http.routers.gitea.rule=Host(`git.${DOMAIN}`)" + - "traefik.http.routers.gitea.entrypoints=https" + - "traefik.http.routers.gitea.service=gitea-service" + - "traefik.http.services.gitea-service.loadbalancer.server.port=3000" + logging: + driver: "json-file" + options: + max-size: "1m" + volumes: + - /data/appdata/gitea:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "3000:3000" + - "222:22" + + gitea-cache: + container_name: gitea-cache + image: redis:7.2.5-alpine3.20 + restart: always + networks: + - proxynet + healthcheck: + test: ["CMD", "redis-cli", "ping"] + interval: 15s + timeout: 3s + retries: 30 + logging: + driver: "json-file" + options: + max-size: "1m" + +networks: + proxynet: + external: true