diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 7e96d54..c22cc99 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -39,6 +39,8 @@ services: restart: always volumes: - ./reverseproxy.dev.conf:/opt/bitnami/nginx/conf/nginx.conf + - ./dev_htwkalender_de.pem:/opt/bitnami/nginx/conf/dev_htwkalender_de.pem + - ./dev_htwkalender_de.key.pem:/opt/bitnami/nginx/conf/dev_htwkalender_de.key.pem depends_on: - htwkalender-backend - htwkalender-frontend diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index f15234e..f33790e 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -16,7 +16,7 @@ services: htwkalender-backend: - image: DOCKER_REGISTRY_REPO:backend # DOCKER_REGISTRY_REPO will be replaced by CI + image: DOCKER_REGISTRY_REPO-backend # DOCKER_REGISTRY_REPO will be replaced by CI command: "--http=0.0.0.0:8090 --dir=/htwkalender/data/pb_data" pull_policy: always restart: always @@ -26,7 +26,7 @@ services: - "net" htwkalender-frontend: - image: DOCKER_REGISTRY_REPO:frontend # DOCKER_REGISTRY_REPO will be replaced by CI + image: DOCKER_REGISTRY_REPO-frontend # DOCKER_REGISTRY_REPO will be replaced by CI pull_policy: always restart: always depends_on: diff --git a/docker-compose.yml b/docker-compose.yml index aa1b485..7c77c23 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -33,8 +33,8 @@ services: build: dockerfile: Dockerfile context: ./frontend - target: prod - # command: "npm run dev" + target: dev + command: "npm run dev" # open port 8000 ports: - "8000:8000" @@ -44,7 +44,7 @@ services: rproxy: image: bitnami/nginx:1.25 volumes: - - ./reverseproxy.dev.conf:/opt/bitnami/nginx/conf/nginx.conf + - ./reverseproxy.local.conf:/opt/bitnami/nginx/conf/nginx.conf depends_on: - htwkalender-backend - htwkalender-frontend diff --git a/reverseproxy.dev.conf b/reverseproxy.dev.conf index de7c057..d300798 100644 --- a/reverseproxy.dev.conf +++ b/reverseproxy.dev.conf @@ -113,6 +113,16 @@ http { server { listen 80; listen [::]:80; + server_name dev.htwkalender.de; + return 301 https://$host$request_uri; + } + + server { + listen 443 ssl; + listen [::]:443 ssl; + server_name dev.htwkalender.de; + ssl_certificate dev_htwkalender_de.pem; + ssl_certificate_key dev_htwkalender_de.key.pem; location /api/feed { proxy_pass http://htwkalender-backend:8090; diff --git a/reverseproxy.local.conf b/reverseproxy.local.conf new file mode 100644 index 0000000..f520005 --- /dev/null +++ b/reverseproxy.local.conf @@ -0,0 +1,74 @@ +#Calendar implementation for the HTWK Leipzig timetable. Evaluation and display of the individual dates in iCal format. +#Copyright (C) 2024 HTWKalender support@htwkalender.de + +#This program is free software: you can redistribute it and/or modify +#it under the terms of the GNU Affero General Public License as published by +#the Free Software Foundation, either version 3 of the License, or +#(at your option) any later version. + +#This program is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +#GNU Affero General Public License for more details. + +#You should have received a copy of the GNU Affero General Public License +#along with this program. If not, see . + +worker_processes 4; + +error_log /opt/bitnami/nginx/logs/error.log; +pid /opt/bitnami/nginx/tmp/nginx.pid; + +events { + worker_connections 1024; +} + +http { + include mime.types; + default_type application/octet-stream; + + access_log /opt/bitnami/nginx/logs/proxy_access.log; + error_log /opt/bitnami/nginx/logs/proxy_error.log; + + sendfile on; + keepalive_timeout 180s; + send_timeout 180s; + + client_body_temp_path /opt/bitnami/nginx/tmp/client_temp; + proxy_temp_path /opt/bitnami/nginx/tmp/proxy_temp_path; + fastcgi_temp_path /opt/bitnami/nginx/tmp/fastcgi_temp; + uwsgi_temp_path /opt/bitnami/nginx/tmp/uwsgi_temp; + scgi_temp_path /opt/bitnami/nginx/tmp/scgi_temp; + + proxy_buffering on; + proxy_buffers 8 16k; + proxy_buffer_size 16k; + proxy_busy_buffers_size 64k; + proxy_temp_file_write_size 64k; + proxy_max_temp_file_size 1024m; + + + server { + listen 80; + listen [::]:80; + + location /api { + proxy_pass http://htwkalender-backend:8090; + client_max_body_size 20m; + proxy_connect_timeout 600s; + proxy_read_timeout 600s; + proxy_send_timeout 600s; + send_timeout 600s; + } + + location /_ { + proxy_pass http://htwkalender-backend:8090; + # Increase upload file size + client_max_body_size 100m; + } + + location / { + proxy_pass http://htwkalender-frontend:8000; + } + } +}