From ca4fdd4927c6005eb5562a09a95184b28865e893 Mon Sep 17 00:00:00 2001 From: Alexander NeonXP Kiryukhin Date: Wed, 27 Dec 2023 23:55:36 +0300 Subject: refactoring --- docker-compose.yml | 117 +++++++++++++++++++++++------------------------------ etc/Caddyfile | 39 +++++++----------- 2 files changed, 66 insertions(+), 90 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 53f9c81..62c9859 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,110 +10,111 @@ services: - "443:443" - "443:443/udp" volumes: - - /var/volumes/configs/Caddyfile:/etc/caddy/Caddyfile + - ./etc/Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data - - /var/volumes/configs:/config - - /var/volumes/www:/var/www networks: - gateway - git: - image: codeberg.org/forgejo/forgejo:1.19.3-0 + forgejo_server: + image: codeberg.org/forgejo/forgejo:1.20.5-0 container_name: git + env_file: + - .env environment: - USER_UID=1001 - USER_GID=1001 - TZ=Europe/Moscow - USER=git - - GITEA__database__DB_TYPE=postgres - - GITEA__database__HOST=db:5432 - - GITEA__database__NAME=${PG_NAME} - - GITEA__database__USER=${PG_USER} - - GITEA__database__PASSWD=${PG_PASS} - - GITEA__server__DISABLE_SSH = false - - GITEA__server__SSH_PORT = 22 - - GITEA__server__SSH_LISTEN_PORT = 22 - + - FORGEJO__database__DB_TYPE=postgres + - FORGEJO__database__HOST=forgejo_db:5432 + - FORGEJO__database__NAME=${FORGEJO_DATABASE} + - FORGEJO__database__USER=${FORGEJO_USERNAME} + - FORGEJO__database__PASSWD=${FORGEJO_PASSWORD} + - FORGEJO__server__DISABLE_SSH = false + - FORGEJO__server__SSH_PORT = 22 + - FORGEJO__server__SSH_LISTEN_PORT = 22 restart: always networks: - - gitea + - forgejo - gateway volumes: - /home/git/.ssh/:/data/git/.ssh - - /var/volumes/forge:/data + - forgejo_data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "127.0.0.1:2222:22" depends_on: - db: - condition: service_healthy + - forgejo_db - db: - image: postgres:13 + forgejo_db: + image: postgres:13-alpine restart: always + env_file: + - .env environment: - - POSTGRES_USER=${PG_USER} - - POSTGRES_PASSWORD=${PG_PASS} - - POSTGRES_DB=${PG_NAME} + - USER_UID=1001 + - USER_GID=1001 + - TZ=Europe/Moscow + - POSTGRES_DATABASE=${FORGEJO_DATABASE} + - POSTGRES_USER=${FORGEJO_USERNAME} + - POSTGRES_PASSWORD=${FORGEJO_PASSWORD} healthcheck: - test: /usr/bin/pg_isready -U ${PG_USER} -d ${PG_NAME} + test: /usr/bin/pg_isready -U ${FORGEJO_USERNAME} -d ${FORGEJO_DATABASE} interval: 5s timeout: 10s retries: 120 networks: - - gitea + - forgejo volumes: - - /var/volumes/postgres:/var/lib/postgresql/data + - forgejo_db_data:/var/lib/postgresql/data - woodpecker-server: + woodpecker_server: image: woodpeckerci/woodpecker-server:latest volumes: - - woodpecker-server-data:/var/lib/woodpecker/ + - woodpecker_data:/var/lib/woodpecker/ environment: - WOODPECKER_OPEN=true - WOODPECKER_GITEA=true - WOODPECKER_GITEA_URL=https://gitrepo.ru - - WOODPECKER_GITEA_CLIENT=${GITEA_CLIENT} - - WOODPECKER_GITEA_SECRET=${GITEA_SECRET} + - WOODPECKER_GITEA_CLIENT=${FORGEJO_WOODPECKER_CLIENT} + - WOODPECKER_GITEA_SECRET=${FORGEJO_WOODPECKER_SECRET} - WOODPECKER_HOST=https://ci.gitrepo.ru - WOODPECKER_ADMIN=neonxp - WOODPECKER_AGENT_SECRET=${WOODPECKER_AGENT_SECRET} networks: - - gitea + - forgejo - gateway depends_on: - - git + - forgejo_server - woodpecker-agent: + woodpecker_agent: image: woodpeckerci/woodpecker-agent:latest command: agent restart: always depends_on: - - woodpecker-server + - woodpecker_server volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - - WOODPECKER_SERVER=woodpecker-server:9000 + - WOODPECKER_SERVER=woodpecker_server:9000 - WOODPECKER_AGENT_SECRET=${WOODPECKER_AGENT_SECRET} networks: - - gitea + - forgejo - pkg: + goproxy_server: image: gitrepo.ru/neonxp/pkg:latest - container_name: goproxy restart: unless-stopped volumes: - - /var/volumes/configs/pkg.json:/usr/app/config.json + - ./etc/pkg.json:/usr/app/config.json networks: - gateway - opengist: + opengist_server: image: ghcr.io/thomiceli/opengist:1 - container_name: opengist restart: unless-stopped volumes: - - "opengist:/root/.opengist" + - opengist_data:/root/.opengist environment: CONFIG: | log-level: info @@ -121,9 +122,8 @@ services: networks: - gateway - remark: + remark_server: image: umputun/remark42:latest - container_name: "remark42" hostname: "remark42" restart: always @@ -162,35 +162,20 @@ services: # to keep creating backups manually! # - ADMIN_PASSWD= volumes: - - remark:/srv/var + - remark_data:/srv/var networks: - gateway - iigo: - image: gitrepo.ru/neonxp/iinode:latest - container_name: "iigo" - hostname: "iigo" - restart: always - - volumes: - - iigodb:/usr/app - - /var/volumes/iigo/tpl:/usr/app/tpl - - /var/volumes/iigo/lib:/usr/app/lib - - networks: - - gateway volumes: - woodpecker-server-data: caddy_data: - caddy_config: - forgejo: - postgres: - opengist: - remark: - iigodb: + opengist_data: + remark_data: + forgejo_data: + forgejo_db_data: + woodpecker_data: networks: gateway: - gitea: + forgejo: external: false diff --git a/etc/Caddyfile b/etc/Caddyfile index b699f86..ab84b55 100644 --- a/etc/Caddyfile +++ b/etc/Caddyfile @@ -3,22 +3,31 @@ file_server } gitrepo.ru { - reverse_proxy git:3000 + reverse_proxy forgejo_server:3000 } ci.gitrepo.ru { - reverse_proxy woodpecker-server:8000 + reverse_proxy woodpecker_server:8000 } + +gist.neonxp.dev { + reverse_proxy opengist_server:6157 +} + +comments.neonxp.dev { + reverse_proxy remark_server:8080 +} + # goproxy.ru { # reverse_proxy localhost:8081 # } go.neonxp.dev { - reverse_proxy goproxy:8080 + reverse_proxy goproxy_server:8080 } -idec.neonxp.dev { - reverse_proxy iigo:8080 -} +# idec.neonxp.dev { +# reverse_proxy iigo:8080 +# } neonxp.dev { tls i@neonxp.dev @@ -82,23 +91,5 @@ files.neonxp.dev { } } -1flash.ru { - tls i@neonxp.dev - reverse_proxy localhost:8082 -} - -oper2.ru { - tls i@neonxp.dev - redir * https://remember-botsyk.livejournal.com/ 302 -} - -gist.neonxp.dev { - reverse_proxy opengist:6157 -} - -comments.neonxp.dev { - reverse_proxy remark:8080 -} - # https://caddyserver.com/docs/caddyfile -- cgit v1.2.3