diff --git a/deployment/.env b/deployment/.env deleted file mode 100644 index 4f66f48..0000000 --- a/deployment/.env +++ /dev/null @@ -1,17 +0,0 @@ -; Email for Let's Encrypt SSL certificate expiration notifications -EMAIL= - -; Postgres database connection -DB_HOST= -DB_USER= -DB_PASS= -DB_NAME= - -; Discord integration -WARNINGS_WEBHOOK_URL= -SCORES_WEBHOOK_URL= - -; osu!api -OSU_API_KEY= -OSU_CLIENT_ID= -OSU_CLIENT_SECRET= \ No newline at end of file diff --git a/deployment/docker-compose.yml b/deployment/docker-compose.yml deleted file mode 100644 index c1e3da7..0000000 --- a/deployment/docker-compose.yml +++ /dev/null @@ -1,107 +0,0 @@ -version: '3' - -services: - - traefik: - image: "traefik:v2.9" - container_name: "traefik" - restart: always - environment: - EMAIL: ${EMAIL} - command: - - "--log.level=ERROR" - - "--api.insecure=false" - - "--providers.docker=true" - - "--providers.docker.exposedbydefault=false" - - "--entrypoints.web.address=:80" - - "--entrypoints.web.http.redirections.entrypoint.to=websecure" - - "--entrypoints.web.http.redirections.entrypoint.scheme=https" - - "--entrypoints.websecure.address=:443" - - "--certificatesresolvers.myresolver.acme.tlschallenge=true" - - "--certificatesresolvers.myresolver.acme.email=${EMAIL}" - - "--certificatesresolvers.myresolver.acme.storage=/letsencrypt/acme.json" - ports: - - "443:443" - - "80:80" - volumes: - - "./letsencrypt:/letsencrypt" - - "/var/run/docker.sock:/var/run/docker.sock:ro" - - postgres: - image: groonga/pgroonga:3.1.6-alpine-15 - container_name: postgres - restart: always - environment: - POSTGRES_USER: ${DB_USER} - POSTGRES_PASSWORD: ${DB_PASS} - volumes: - - postgres-data:/var/lib/postgresql/data - command: > - -c work_mem=4MB - shm_size: '128mb' - - redis: - image: redis:alpine - container_name: redis - restart: always - - nise-backend: - image: git.gengo.tech/gengotech/nise-backend:latest - container_name: nise-backend - environment: - SPRING_PROFILES_ACTIVE: postgres,discord,updater - # App configuration - OLD_SCORES_PAGE_SIZE: 5000 - # Origin - ORIGIN: "https://nise.moe" - # Postgres - POSTGRES_HOST: ${DB_HOST} - POSTGRES_USER: ${DB_USER} - POSTGRES_PASS: ${DB_PASS} - POSTGRES_DB: ${DB_NAME} - # redis - REDIS_DB: 4 - # Discord - WEBHOOK_URL: ${WARNINGS_WEBHOOK_URL} - SCORES_WEBHOOK_URL: ${SCORES_WEBHOOK_URL} - # osu!api - OSU_API_KEY: ${OSU_API_KEY} - OSU_CLIENT_ID: ${OSU_CLIENT_ID} - OSU_CLIENT_SECRET: ${OSU_CLIENT_SECRET} - # Internal API - CIRCLEGUARD_API_URL: http://nise-circleguard:5000 - restart: always - labels: - - "traefik.enable=true" - - "traefik.http.routers.nise.rule=Host(`nise.moe`) && PathPrefix(`/api/`)" - - "traefik.http.routers.nise.middlewares=nise-stripprefix" - - "traefik.http.middlewares.nise-stripprefix.stripprefix.prefixes=/api/" - - "traefik.http.services.nise.loadbalancer.server.port=8080" - - "traefik.http.routers.nise.entrypoints=websecure" - - "traefik.http.routers.nise.tls.certresolver=myresolver" - depends_on: - - postgres - - redis - - nise-circleguard: - image: git.gengo.tech/nuff/nise-circleguard:latest - container_name: nise-circleguard - environment: - OSU_API_KEY: ${OSU_API_KEY} - restart: always - volumes: - - ./nise-data:/app/dbs - - nise-frontend: - image: git.gengo.tech/gengotech/nise-frontend:latest - container_name: nise-frontend - restart: always - labels: - - "traefik.enable=true" - - "traefik.http.routers.nise-frontend.rule=Host(`nise.moe`) && PathPrefix(`/`)" - - "traefik.http.services.nise-frontend.loadbalancer.server.port=80" - - "traefik.http.routers.nise-frontend.entrypoints=websecure" - - "traefik.http.routers.nise-frontend.tls.certresolver=myresolver" - -volumes: - postgres-data: diff --git a/readme.md b/readme.md index 6f2b22e..f869e4e 100644 --- a/readme.md +++ b/readme.md @@ -1,6 +1,6 @@
-

/nise.moe/ project

+

/nise.moe/ project

an osu!std website that tracks possible cheaters.

@@ -25,7 +25,7 @@ you can read the individual readme files for each module to see how to run them ### production -you can check out the deployment folder to see how the website runs in production. it uses docker-compose to handle the containers, and traefik as a reverse proxy. +we manage the production stack in a separate `infra` repository. it uses docker-compose to handle the containers, and traefik as a reverse proxy. # contributing