diff --git a/compose/traefik/traefik.yml b/compose/traefik/traefik.yml index 356460f..e36f890 100644 --- a/compose/traefik/traefik.yml +++ b/compose/traefik/traefik.yml @@ -117,6 +117,17 @@ http: service: adminer_app tls: certResolver: letsencrypt + + api-router: + rule: "Host(`api.furyhawk.lol`)" + entryPoints: + - web-secure + middlewares: + - auth + - csrf + service: api_server + tls: + certResolver: letsencrypt kestra-router: rule: "Host(`kestra.furyhawk.lol`)" @@ -403,6 +414,10 @@ http: loadBalancer: servers: - url: http://adminer:8080 + api_server: + loadBalancer: + servers: + - url: http://api_server:8000 kestra_app: loadBalancer: servers: diff --git a/production.yml b/production.yml index 3f2a63e..e1bd0bf 100644 --- a/production.yml +++ b/production.yml @@ -150,6 +150,55 @@ services: - net - default + neo4j_server: + # Docker image to be used + image: ${NEO4J_DOCKER_IMAGE:-neo4j:latest} + container_name: neo4j_server + restart: unless-stopped + # Environment variables + environment: + NEO4J_AUTH: neo4j/${NEO4J_PASSWORD:-12345678} + NEO4J_dbms.default_listen_address: "0.0.0.0" + NEO4J_dbms.default_advertised_address: "neo4j.furyhawk.lol" + NEO4J_dbms.connector.bolt.advertised_address: ":443" + NEO4J_dbms_security_procedures_unrestricted: "apoc.*" + NEO4J_server_memory_pagecache_size: 512M + NEO4J_server_memory_heap_max__size: 2G + user: "1000:1000" + depends_on: + - traefik + volumes: + - ./neo4j/data:/data + - ./neo4j/logs:/logs + # Expose ports + # ports: + # - "7474:7474" + # - "7687:7687" + networks: + - net + - default + + api_server: + image: furyhawk/listen:latest + container_name: api_server + restart: always + depends_on: + - postgres + environment: + DATABASE__HOSTNAME: ${DATABASE__HOSTNAME} + DATABASE__USERNAME: ${POSTGRES_USER} + DATABASE__PASSWORD: ${POSTGRES_PASSWORD} + DATABASE__PORT: ${DATABASE__PORT} + DATABASE__DB: ${DATABASE__DB} + SECURITY__JWT_SECRET_KEY: ${SECURITY__JWT_SECRET_KEY} + SECURITY__BACKEND_CORS_ORIGINS: ${SECURITY__BACKEND_CORS_ORIGINS} + SECURITY__ALLOWED_HOSTS: ${SECURITY__ALLOWED_HOSTS} + ports: + - "8000:8000" + networks: + - net + - default + privatebin: image: privatebin/nginx-fpm-alpine:latest container_name: privatebin @@ -236,55 +285,6 @@ services: - net - default - neo4j_server: - # Docker image to be used - image: ${NEO4J_DOCKER_IMAGE:-neo4j:latest} - container_name: neo4j_server - restart: unless-stopped - # Environment variables - environment: - NEO4J_AUTH: neo4j/${NEO4J_PASSWORD:-12345678} - NEO4J_dbms.default_listen_address: "0.0.0.0" - NEO4J_dbms.default_advertised_address: "neo4j.furyhawk.lol" - NEO4J_dbms.connector.bolt.advertised_address: ":443" - NEO4J_dbms_security_procedures_unrestricted: "apoc.*" - NEO4J_server_memory_pagecache_size: 512M - NEO4J_server_memory_heap_max__size: 2G - user: "1000:1000" - depends_on: - - traefik - volumes: - - ./neo4j/data:/data - - ./neo4j/logs:/logs - # Expose ports - # ports: - # - "7474:7474" - # - "7687:7687" - networks: - - net - - default - - api_server: - image: furyhawk/listen:latest - container_name: api_server - restart: always - depends_on: - - postgres - environment: - DATABASE__HOSTNAME: ${DATABASE__HOSTNAME} - DATABASE__USERNAME: ${POSTGRES_USER} - DATABASE__PASSWORD: ${POSTGRES_PASSWORD} - DATABASE__PORT: ${DATABASE__PORT} - DATABASE__DB: ${DATABASE__DB} - SECURITY__JWT_SECRET_KEY: ${SECURITY__JWT_SECRET_KEY} - SECURITY__BACKEND_CORS_ORIGINS: ${SECURITY__BACKEND_CORS_ORIGINS} - SECURITY__ALLOWED_HOSTS: ${SECURITY__ALLOWED_HOSTS} - ports: - - "8000:8000" - networks: - - net - - default - site_server: image: nginx:alpine container_name: site_server