From 91ad9c65c7045345a5e11ed99b11926a1ae7f4b9 Mon Sep 17 00:00:00 2001 From: Juan Date: Tue, 8 Apr 2025 15:46:29 -0500 Subject: [PATCH 01/26] first commit --- lasuite/bin/README.md | 1 + lasuite/data/README.md | 1 + lasuite/docs/bin/README.md | 1 + lasuite/docs/data/README.md | 1 + lasuite/docs/docker-compose.yaml | 73 ++++++++++++++++++++++++++++++++ lasuite/docs/env.d/backend | 65 ++++++++++++++++++++++++++++ lasuite/docs/env.d/common | 7 +++ lasuite/docs/env.d/yprovider | 7 +++ lasuite/docs/etc/README.md | 1 + lasuite/etc/README.md | 1 + 10 files changed, 158 insertions(+) create mode 100644 lasuite/bin/README.md create mode 100644 lasuite/data/README.md create mode 100644 lasuite/docs/bin/README.md create mode 100644 lasuite/docs/data/README.md create mode 100644 lasuite/docs/docker-compose.yaml create mode 100644 lasuite/docs/env.d/backend create mode 100644 lasuite/docs/env.d/common create mode 100644 lasuite/docs/env.d/yprovider create mode 100644 lasuite/docs/etc/README.md create mode 100644 lasuite/etc/README.md diff --git a/lasuite/bin/README.md b/lasuite/bin/README.md new file mode 100644 index 0000000..5dacadf --- /dev/null +++ b/lasuite/bin/README.md @@ -0,0 +1 @@ +helper scripts go here diff --git a/lasuite/data/README.md b/lasuite/data/README.md new file mode 100644 index 0000000..4dbaded --- /dev/null +++ b/lasuite/data/README.md @@ -0,0 +1 @@ +service state and logs go here diff --git a/lasuite/docs/bin/README.md b/lasuite/docs/bin/README.md new file mode 100644 index 0000000..5dacadf --- /dev/null +++ b/lasuite/docs/bin/README.md @@ -0,0 +1 @@ +helper scripts go here diff --git a/lasuite/docs/data/README.md b/lasuite/docs/data/README.md new file mode 100644 index 0000000..4dbaded --- /dev/null +++ b/lasuite/docs/data/README.md @@ -0,0 +1 @@ +service state and logs go here diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml new file mode 100644 index 0000000..fc1e740 --- /dev/null +++ b/lasuite/docs/docker-compose.yaml @@ -0,0 +1,73 @@ +services: + postgresql: + image: postgres:16 + healthcheck: + test: ["CMD", "pg_isready", "-q", "-U", "docs", "-d", "docs"] + interval: 1s + timeout: 2s + retries: 300 + env_file: + - env.d/postgresql + - env.d/common + environment: + - PGDATA=/var/lib/postgresql/data/pgdata + volumes: + - ./data/databases/backend:/var/lib/postgresql/data/pgdata + + redis: + image: redis:5 + + backend: + image: lasuite/impress-backend:latest + user: ${DOCKER_USER:-1000} + restart: always + environment: + - DJANGO_CONFIGURATION=Production + env_file: + - env.d/backend + - env.d/postgresql + - env.d/common + healthcheck: + test: ["CMD", "python", "manage.py", "check"] + interval: 15s + timeout: 30s + retries: 20 + start_period: 10s + depends_on: + postgresql: + condition: service_healthy + restart: true + redis: + condition: service_started + + y-provider: + image: lasuite/impress-y-provider:latest + user: ${DOCKER_USER:-1000} + env_file: + - env.d/common + - env.d/yprovider + + frontend: + image: lasuite/impress-frontend:latest + user: "101" + env_file: + - env.d/common + # Uncomment and set your values if using our nginx proxy example + #environment: + # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy + # - VIRTUAL_PORT=8083 # used by nginx proxy + # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate + volumes: + - ./default.conf.template:/etc/nginx/templates/default.conf.template + depends_on: + backend: + condition: service_healthy +# Uncomment if using our nginx proxy example +# networks: +# - proxy-tier +# - default + +# Uncomment if using our nginx proxy example +#networks: +# proxy-tier: +# external: true \ No newline at end of file diff --git a/lasuite/docs/env.d/backend b/lasuite/docs/env.d/backend new file mode 100644 index 0000000..70ae247 --- /dev/null +++ b/lasuite/docs/env.d/backend @@ -0,0 +1,65 @@ +## Django +DJANGO_ALLOWED_HOSTS=${DOCS_HOST} +DJANGO_SECRET_KEY= +DJANGO_SETTINGS_MODULE=impress.settings +DJANGO_CONFIGURATION=Production + +# Logging +# Set to DEBUG level for dev only +LOGGING_LEVEL_HANDLERS_CONSOLE=ERROR +LOGGING_LEVEL_LOGGERS_ROOT=INFO +LOGGING_LEVEL_LOGGERS_APP=INFO + +# Python +PYTHONPATH=/app + +# Mail +DJANGO_EMAIL_HOST= +DJANGO_EMAIL_HOST_USER= +DJANGO_EMAIL_HOST_PASSWORD= +DJANGO_EMAIL_PORT= +DJANGO_EMAIL_FROM= + +#DJANGO_EMAIL_USE_TLS=true # A flag to enable or disable TLS for email sending. +#DJANGO_EMAIL_USE_SSL=true # A flag to enable or disable SSL for email sending. + +DJANGO_EMAIL_BRAND_NAME="La Suite Numérique" +DJANGO_EMAIL_LOGO_IMG="https://${DOCS_HOST}/assets/logo-suite-numerique.png" + +# Media +AWS_S3_ENDPOINT_URL=https://${S3_HOST} +AWS_S3_ACCESS_KEY_ID= +AWS_S3_SECRET_ACCESS_KEY= +AWS_STORAGE_BUCKET_NAME=${BUCKET_NAME} +MEDIA_BASE_URL=https://${DOCS_HOST} + +# OIDC +OIDC_OP_JWKS_ENDPOINT=https://${KEYCLOAK_HOST}/realms/${REALM_NAME}/protocol/openid-connect/certs +OIDC_OP_AUTHORIZATION_ENDPOINT=https://${KEYCLOAK_HOST}/realms/${REALM_NAME}/protocol/openid-connect/auth +OIDC_OP_TOKEN_ENDPOINT=https://${KEYCLOAK_HOST}/realms/${REALM_NAME}/protocol/openid-connect/token +OIDC_OP_USER_ENDPOINT=https://${KEYCLOAK_HOST}/realms/${REALM_NAME}/protocol/openid-connect/userinfo +OIDC_OP_LOGOUT_ENDPOINT=https://${KEYCLOAK_HOST}/realms/${REALM_NAME}/protocol/openid-connect/logout +OIDC_RP_CLIENT_ID= +OIDC_RP_CLIENT_SECRET= +OIDC_RP_SIGN_ALGO=RS256 +OIDC_RP_SCOPES="openid email" +#USER_OIDC_FIELD_TO_SHORTNAME +#USER_OIDC_FIELDS_TO_FULLNAME + +LOGIN_REDIRECT_URL=https://${DOCS_HOST} +LOGIN_REDIRECT_URL_FAILURE=https://${DOCS_HOST} +LOGOUT_REDIRECT_URL=https://${DOCS_HOST} + +OIDC_REDIRECT_ALLOWED_HOSTS=["https://${DOCS_HOST}"] + +# AI +#AI_FEATURE_ENABLED=true # is false by default +#AI_BASE_URL=https://openaiendpoint.com +#AI_API_KEY= +#AI_MODEL= e.g. llama + +# Frontend +#FRONTEND_THEME=mytheme +#FRONTEND_CSS_URL=https://storage.yourdomain.tld/themes/custom.css +#FRONTEND_FOOTER_FEATURE_ENABLED=true +#FRONTEND_URL_JSON_FOOTER=https://docs.domain.tld/contents/footer-demo.json diff --git a/lasuite/docs/env.d/common b/lasuite/docs/env.d/common new file mode 100644 index 0000000..1660ad6 --- /dev/null +++ b/lasuite/docs/env.d/common @@ -0,0 +1,7 @@ +DOCS_HOST=docs.domain.tld +S3_HOST=storage.domain.tld +MINIO_HOST=storage.domain.tld +BACKEND_HOST=backend +FRONTEND_HOST=frontend +BUCKET_NAME=docs-media-storage +REALM_NAME=docs diff --git a/lasuite/docs/env.d/yprovider b/lasuite/docs/env.d/yprovider new file mode 100644 index 0000000..b2a3cbe --- /dev/null +++ b/lasuite/docs/env.d/yprovider @@ -0,0 +1,7 @@ +Y_PROVIDER_API_KEY= +COLLABORATION_SERVER_SECRET= +COLLABORATION_SERVER_ORIGIN=https://${DOCS_HOST} +COLLABORATION_API_URL=https://${DOCS_HOST}/collaboration/api/ +COLLABORATION_WS_URL=wss://${DOCS_HOST}/collaboration/ws/ +COLLABORATION_BACKEND_BASE_URL=https://${DOCS_HOST} +COLLABORATION_LOGGING=true diff --git a/lasuite/docs/etc/README.md b/lasuite/docs/etc/README.md new file mode 100644 index 0000000..68bb048 --- /dev/null +++ b/lasuite/docs/etc/README.md @@ -0,0 +1 @@ +config files go here diff --git a/lasuite/etc/README.md b/lasuite/etc/README.md new file mode 100644 index 0000000..68bb048 --- /dev/null +++ b/lasuite/etc/README.md @@ -0,0 +1 @@ +config files go here From c92c0a4a34112d239e15f9c4df1a17cac965cbc6 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 15:07:16 -0500 Subject: [PATCH 02/26] env first try, missing ports --- lasuite/docs/docker-compose.yaml | 117 +++++++++++++++++++++++++------ 1 file changed, 96 insertions(+), 21 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index fc1e740..7a05882 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -2,17 +2,16 @@ services: postgresql: image: postgres:16 healthcheck: - test: ["CMD", "pg_isready", "-q", "-U", "docs", "-d", "docs"] + test: [ "CMD", "pg_isready", "-q", "-U", "docs", "-d", "docs" ] interval: 1s timeout: 2s retries: 300 env_file: - - env.d/postgresql - - env.d/common + - .env environment: - - PGDATA=/var/lib/postgresql/data/pgdata + - PGDATA=/var/lib/postgresql/data/pgdata volumes: - - ./data/databases/backend:/var/lib/postgresql/data/pgdata + - ./data/databases/backend:/var/lib/postgresql/data/pgdata redis: image: redis:5 @@ -22,13 +21,83 @@ services: user: ${DOCKER_USER:-1000} restart: always environment: - - DJANGO_CONFIGURATION=Production + - DJANGO_CONFIGURATION=Production + # Common variables + - DOCS_HOST=${DOCS_HOST} + - S3_HOST=${S3_HOST} + - MINIO_HOST=${MINIO_HOST} + - BACKEND_HOST=${BACKEND_HOST} + - FRONTEND_HOST=${FRONTEND_HOST} + - BUCKET_NAME=docs-media-storage + - REALM_NAME=docs + # Backend variables## Django + - DJANGO_ALLOWED_HOSTS=${DOCS_HOST} + - DJANGO_SECRET_KEY=${DJANGO_SECRET_KEY} + - DJANGO_SETTINGS_MODULE=impress.settings + - DJANGO_CONFIGURATION=Production + + # Logging + # Set to DEBUG level for dev only + - LOGGING_LEVEL_HANDLERS_CONSOLE=ERROR + - LOGGING_LEVEL_LOGGERS_ROOT=INFO + - LOGGING_LEVEL_LOGGERS_APP=INFO + + # Python + - PYTHONPATH=/app + + # Mail + - DJANGO_EMAIL_HOST=${DJANGO_EMAIL_HOST} + - DJANGO_EMAIL_HOST_USER=${DJANGO_EMAIL_HOST_USER} + - DJANGO_EMAIL_HOST_PASSWORD=${DJANGO_EMAIL_HOST_PASSWORD} + - DJANGO_EMAIL_PORT=${DJANGO_EMAIL_PORT} + - DJANGO_EMAIL_FROM=${DJANGO_EMAIL_FROM} + + #DJANGO_EMAIL_USE_TLS=true # A flag to enable or disable TLS for email sending. + #DJANGO_EMAIL_USE_SSL=true # A flag to enable or disable SSL for email sending. + + - DJANGO_EMAIL_BRAND_NAME="Monadical" + # DJANGO_EMAIL_LOGO_IMG="https://${DOCS_HOST}/assets/logo-suite-numerique.png" + + # Media + - AWS_S3_ENDPOINT_URL=https://${S3_HOST} + - AWS_S3_ACCESS_KEY_ID=${AWS_S3_ACCESS_KEY_ID} + - AWS_S3_SECRET_ACCESS_KEY=${AWS_S3_SECRET_ACCESS_KEY} + - AWS_STORAGE_BUCKET_NAME=${BUCKET_NAME} + - MEDIA_BASE_URL=https://${DOCS_HOST} + + # OIDC + - OIDC_OP_JWKS_ENDPOINT=${OIDC_OP_JWKS_ENDPOINT} + - OIDC_OP_AUTHORIZATION_ENDPOINT=${OIDC_OP_AUTHORIZATION_ENDPOINT} + - OIDC_OP_TOKEN_ENDPOINT=${OIDC_OP_TOKEN_ENDPOINT} + - OIDC_OP_USER_ENDPOINT=${OIDC_OP_USER_ENDPOINT} + - OIDC_OP_LOGOUT_ENDPOINT=${OIDC_OP_LOGOUT_ENDPOINT} + - OIDC_RP_CLIENT_ID=${OIDC_RP_CLIENT_ID} + - OIDC_RP_CLIENT_SECRET=${OIDC_RP_CLIENT_SECRET} + - OIDC_RP_SIGN_ALGO=RS256 + - OIDC_RP_SCOPES="openid email" + #USER_OIDC_FIELD_TO_SHORTNAME + #USER_OIDC_FIELDS_TO_FULLNAME + + - LOGIN_REDIRECT_URL=https://${DOCS_HOST} + - LOGIN_REDIRECT_URL_FAILURE=https://${DOCS_HOST} + - LOGOUT_REDIRECT_URL=https://${DOCS_HOST} + - OIDC_REDIRECT_ALLOWED_HOSTS=["https://${DOCS_HOST}"] + + # AI + - AI_FEATURE_ENABLED=true # is false by default + - AI_BASE_URL=${AI_BASE_URL} + - AI_API_KEY=${AI_API_KEY} + - AI_MODEL=${AI_MODEL} # e.g. llama + # Frontend + #FRONTEND_THEME=mytheme + #FRONTEND_CSS_URL=https://storage.yourdomain.tld/themes/custom.css + #FRONTEND_FOOTER_FEATURE_ENABLED=true + #FRONTEND_URL_JSON_FOOTER=https://docs.domain.tld/contents/footer-demo.json + env_file: - - env.d/backend - - env.d/postgresql - - env.d/common + - .env healthcheck: - test: ["CMD", "python", "manage.py", "check"] + test: [ "CMD", "python", "manage.py", "check" ] interval: 15s timeout: 30s retries: 20 @@ -43,25 +112,31 @@ services: y-provider: image: lasuite/impress-y-provider:latest user: ${DOCKER_USER:-1000} - env_file: - - env.d/common - - env.d/yprovider + entrypoint: + - Y_PROVIDER_API_KEY=${Y_PROVIDER_API_KEY} + - COLLABORATION_SERVER_SECRET=${COLLABORATION_SERVER_SECRET} + - COLLABORATION_SERVER_ORIGIN=https://${DOCS_HOST} + - COLLABORATION_API_URL=https://${DOCS_HOST}/collaboration/api/ + - COLLABORATION_WS_URL=wss://${DOCS_HOST}/collaboration/ws/ + - COLLABORATION_BACKEND_BASE_URL=https://${DOCS_HOST} + - COLLABORATION_LOGGING=true frontend: image: lasuite/impress-frontend:latest user: "101" env_file: - - env.d/common - # Uncomment and set your values if using our nginx proxy example - #environment: - # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy - # - VIRTUAL_PORT=8083 # used by nginx proxy - # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate + - .env + # Uncomment and set your values if using our nginx proxy example + #environment: + # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy + # - VIRTUAL_PORT=8083 # used by nginx proxy + # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate volumes: - - ./default.conf.template:/etc/nginx/templates/default.conf.template + - ./default.conf.template:/etc/nginx/templates/default.conf.template depends_on: backend: condition: service_healthy + # Uncomment if using our nginx proxy example # networks: # - proxy-tier @@ -70,4 +145,4 @@ services: # Uncomment if using our nginx proxy example #networks: # proxy-tier: -# external: true \ No newline at end of file +# external: true From 13661a598bf992a4a3977d79cf9ae01cf6fa3f94 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 15:12:31 -0500 Subject: [PATCH 03/26] added ports --- lasuite/docs/docker-compose.yaml | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 7a05882..2a7459d 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -20,6 +20,8 @@ services: image: lasuite/impress-backend:latest user: ${DOCKER_USER:-1000} restart: always + ports: + - 8083:8083 environment: - DJANGO_CONFIGURATION=Production # Common variables @@ -112,7 +114,9 @@ services: y-provider: image: lasuite/impress-y-provider:latest user: ${DOCKER_USER:-1000} - entrypoint: + ports: + - 4444:4444 + environment: - Y_PROVIDER_API_KEY=${Y_PROVIDER_API_KEY} - COLLABORATION_SERVER_SECRET=${COLLABORATION_SERVER_SECRET} - COLLABORATION_SERVER_ORIGIN=https://${DOCS_HOST} @@ -127,10 +131,11 @@ services: env_file: - .env # Uncomment and set your values if using our nginx proxy example - #environment: - # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy - # - VIRTUAL_PORT=8083 # used by nginx proxy - # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate + ports: + - 3003:3003 + # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy + # - VIRTUAL_PORT=8083 # used by nginx proxy + # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate volumes: - ./default.conf.template:/etc/nginx/templates/default.conf.template depends_on: From e5160b4e00f83a7b3356beb84ec2b19915e465e7 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 16:24:06 -0500 Subject: [PATCH 04/26] nginx tryout --- lasuite/docs/docker-compose.yaml | 67 ++++++++++------- lasuite/docs/etc/default.conf | 120 +++++++++++++++++++++++++++++++ 2 files changed, 163 insertions(+), 24 deletions(-) create mode 100644 lasuite/docs/etc/default.conf diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 2a7459d..75ac98f 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -20,10 +20,8 @@ services: image: lasuite/impress-backend:latest user: ${DOCKER_USER:-1000} restart: always - ports: - - 8083:8083 environment: - - DJANGO_CONFIGURATION=Production + - SERVICE_FQDN_BACKEND_8000 # Common variables - DOCS_HOST=${DOCS_HOST} - S3_HOST=${S3_HOST} @@ -98,6 +96,8 @@ services: env_file: - .env + networks: + - proxy-tier healthcheck: test: [ "CMD", "python", "manage.py", "check" ] interval: 15s @@ -111,12 +111,11 @@ services: redis: condition: service_started - y-provider: + yprovider: image: lasuite/impress-y-provider:latest user: ${DOCKER_USER:-1000} - ports: - - 4444:4444 environment: + - SERVICE_FQDN_YPROVIDER_4444 - Y_PROVIDER_API_KEY=${Y_PROVIDER_API_KEY} - COLLABORATION_SERVER_SECRET=${COLLABORATION_SERVER_SECRET} - COLLABORATION_SERVER_ORIGIN=https://${DOCS_HOST} @@ -125,29 +124,49 @@ services: - COLLABORATION_BACKEND_BASE_URL=https://${DOCS_HOST} - COLLABORATION_LOGGING=true + minio: + image: minio/minio + environment: + - MINIO_ROOT_USER=${MINIO_ROOT_USER} + - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} + - SERVICE_FQDN_MINIO_9009 + healthcheck: + test: ["CMD", "mc", "ready", "local"] + interval: 1s + timeout: 20s + retries: 300 + entrypoint: "" + command: minio server /data + volumes: + - ./data/minio:/data + frontend: image: lasuite/impress-frontend:latest user: "101" + environment: + - SERVICE_FQDN_FRONTEND_3000 env_file: - .env - # Uncomment and set your values if using our nginx proxy example - ports: - - 3003:3003 - # - VIRTUAL_HOST=${DOCS_HOST} # used by nginx proxy - # - VIRTUAL_PORT=8083 # used by nginx proxy - # - LETSENCRYPT_HOST=${DOCS_HOST} # used by lets encrypt to generate TLS certificate volumes: - - ./default.conf.template:/etc/nginx/templates/default.conf.template + - ./etc/default.conf:/etc/nginx/templates/default.conf depends_on: backend: - condition: service_healthy - -# Uncomment if using our nginx proxy example -# networks: -# - proxy-tier -# - default - -# Uncomment if using our nginx proxy example -#networks: -# proxy-tier: -# external: true + condition: + service_healthy + networks: + - proxy-tier + + nginxproxy: + image: nginxproxy/nginx-proxy + container_name: nginx-proxy + environment: + - SERVICE_FQDN_NGINXPROXY_80 + volumes: + - html:/usr/share/nginx/html + - ./etc/default.conf:/etc/nginx/templates/default.conf + networks: + - proxy-tier + +networks: + proxy-tier: + external: true diff --git a/lasuite/docs/etc/default.conf b/lasuite/docs/etc/default.conf new file mode 100644 index 0000000..9430ab1 --- /dev/null +++ b/lasuite/docs/etc/default.conf @@ -0,0 +1,120 @@ +upstream docs_backend { + server ${BACKEND_HOST}:8000 fail_timeout=0; +} + +upstream docs_frontend { + server ${FRONTEND_HOST}:3000 fail_timeout=0; +} + +server { + listen 8083; + server_name localhost; + charset utf-8; + + # Disables server version feedback on pages and in headers + server_tokens off; + + proxy_ssl_server_name on; + + location @proxy_to_docs_backend { + proxy_set_header Host $http_host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + + proxy_redirect off; + proxy_pass http://docs_backend; + } + + location @proxy_to_docs_frontend { + proxy_set_header Host $http_host; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + + proxy_redirect off; + proxy_pass http://docs_frontend; + } + + location / { + try_files $uri @proxy_to_docs_frontend; + } + + location /api { + try_files $uri @proxy_to_docs_backend; + } + + location /admin { + try_files $uri @proxy_to_docs_backend; + } + + # Proxy auth for collaboration server + location /collaboration/ws/ { + # Ensure WebSocket upgrade + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + + # Collaboration server + proxy_pass http://yprovider:4444; + + # Set appropriate timeout for WebSocket + proxy_read_timeout 86400; + proxy_send_timeout 86400; + + # Preserve original host and additional headers + proxy_set_header X-Forwarded-Proto https; + proxy_set_header Origin $http_origin; + proxy_set_header Host $host; + } + + location /collaboration-auth { + proxy_pass http://docs_backend/api/v1.0/documents/collaboration-auth/; + proxy_set_header X-Forwarded-Proto https; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Original-URL $request_uri; + + # Prevent the body from being passed + proxy_pass_request_body off; + proxy_set_header Content-Length ""; + proxy_set_header X-Original-Method $request_method; + } + + location /collaboration/api/ { + # Collaboration server + proxy_pass http://yprovider:4444; + proxy_set_header Host $host; + } + # Proxy auth for media + location /media/ { + # Auth request configuration + auth_request /media-auth; + auth_request_set $authHeader $upstream_http_authorization; + auth_request_set $authDate $upstream_http_x_amz_date; + auth_request_set $authContentSha256 $upstream_http_x_amz_content_sha256; + + # Pass specific headers from the auth response + proxy_set_header Authorization $authHeader; + proxy_set_header X-Amz-Date $authDate; + proxy_set_header X-Amz-Content-SHA256 $authContentSha256; + + # Get resource from Minio + proxy_pass https://${S3_HOST}/${BUCKET_NAME}/; + proxy_set_header Host ${S3_HOST}; + + proxy_ssl_name ${S3_HOST}; + + add_header Content-Security-Policy "default-src 'none'" always; + } + + location /media-auth { + proxy_pass http://docs_backend/api/v1.0/documents/media-auth/; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Original-URL $request_uri; + + # Prevent the body from being passed + proxy_pass_request_body off; + proxy_set_header Content-Length ""; + proxy_set_header X-Original-Method $request_method; + } +} \ No newline at end of file From 4e5c47b7e7e6e0d5c7c1f57f20ebc74062161b82 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 16:25:45 -0500 Subject: [PATCH 05/26] nginx tryout --- lasuite/docs/docker-compose.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 75ac98f..c7b1f7c 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -21,7 +21,7 @@ services: user: ${DOCKER_USER:-1000} restart: always environment: - - SERVICE_FQDN_BACKEND_8000 + # - SERVICE_FQDN_BACKEND_8000 # Common variables - DOCS_HOST=${DOCS_HOST} - S3_HOST=${S3_HOST} @@ -115,7 +115,7 @@ services: image: lasuite/impress-y-provider:latest user: ${DOCKER_USER:-1000} environment: - - SERVICE_FQDN_YPROVIDER_4444 + # - SERVICE_FQDN_YPROVIDER_4444 - Y_PROVIDER_API_KEY=${Y_PROVIDER_API_KEY} - COLLABORATION_SERVER_SECRET=${COLLABORATION_SERVER_SECRET} - COLLABORATION_SERVER_ORIGIN=https://${DOCS_HOST} @@ -143,8 +143,8 @@ services: frontend: image: lasuite/impress-frontend:latest user: "101" - environment: - - SERVICE_FQDN_FRONTEND_3000 + # environment: + # - SERVICE_FQDN_FRONTEND_3000 env_file: - .env volumes: From 8238a0c6fc3b38c00bd1247805397d24dbe50d36 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 16:44:21 -0500 Subject: [PATCH 06/26] default network --- lasuite/docs/docker-compose.yaml | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index c7b1f7c..3854e6a 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -15,6 +15,17 @@ services: redis: image: redis:5 + restart: always + volumes: + - 'redis-data:/data' + healthcheck: + test: + - CMD + - redis-cli + - ping + interval: 5s + timeout: 20s + retries: 10 backend: image: lasuite/impress-backend:latest @@ -96,8 +107,8 @@ services: env_file: - .env - networks: - - proxy-tier + # networks: + # - proxy-tier healthcheck: test: [ "CMD", "python", "manage.py", "check" ] interval: 15s @@ -153,8 +164,8 @@ services: backend: condition: service_healthy - networks: - - proxy-tier + # networks: + # - proxy-tier nginxproxy: image: nginxproxy/nginx-proxy @@ -164,9 +175,9 @@ services: volumes: - html:/usr/share/nginx/html - ./etc/default.conf:/etc/nginx/templates/default.conf - networks: - - proxy-tier + # networks: + # - proxy-tier -networks: - proxy-tier: - external: true +# networks: +# proxy-tier: +# external: true From 50949cac3ea81137e15041f984ba352078c237f0 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 16:49:46 -0500 Subject: [PATCH 07/26] postgress and minio port --- lasuite/docs/docker-compose.yaml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 3854e6a..5190728 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -10,6 +10,17 @@ services: - .env environment: - PGDATA=/var/lib/postgresql/data/pgdata + # App database configuration + - DB_HOST=postgresql + - DB_NAME=docs + - DB_USER=docs + - DB_PASSWORD=${DB_PASSWORD} + - DB_PORT=5432 + + # Postgresql db container configuration + - POSTGRES_DB=docs + - POSTGRES_USER=docs + - POSTGRES_PASSWORD=${DB_PASSWORD} volumes: - ./data/databases/backend:/var/lib/postgresql/data/pgdata @@ -140,7 +151,7 @@ services: environment: - MINIO_ROOT_USER=${MINIO_ROOT_USER} - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} - - SERVICE_FQDN_MINIO_9009 + - SERVICE_FQDN_MINIO_35895 healthcheck: test: ["CMD", "mc", "ready", "local"] interval: 1s From 08c492e7e024408c731de418442af2a0c2a1b0c1 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 16:55:48 -0500 Subject: [PATCH 08/26] ngex sock --- lasuite/docs/docker-compose.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 5190728..925fabc 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -186,6 +186,7 @@ services: volumes: - html:/usr/share/nginx/html - ./etc/default.conf:/etc/nginx/templates/default.conf + - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier From 5d959d89691438186ca438d9345f19c12ec0b274 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:03:13 -0500 Subject: [PATCH 09/26] minio steup --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 925fabc..b61d01b 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -151,7 +151,7 @@ services: environment: - MINIO_ROOT_USER=${MINIO_ROOT_USER} - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} - - SERVICE_FQDN_MINIO_35895 + - SERVICE_FQDN_MINIO_9000 healthcheck: test: ["CMD", "mc", "ready", "local"] interval: 1s From 74ede4668ce1c1a8d8a7f9d0c356de5fb115b188 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:22:31 -0500 Subject: [PATCH 10/26] minio steup --- lasuite/docs/docker-compose.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index b61d01b..3efe8dc 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -151,7 +151,9 @@ services: environment: - MINIO_ROOT_USER=${MINIO_ROOT_USER} - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} + - MINIO_BROWSER_REDIRECT_URL=https://${MINIO_HOST}/ui - SERVICE_FQDN_MINIO_9000 + # - SERVICE_FQDN_MINIO_9001 healthcheck: test: ["CMD", "mc", "ready", "local"] interval: 1s From 12152b12aa9a4530ccc0b252937a0fba98ca88b9 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:44:47 -0500 Subject: [PATCH 11/26] add more env vars to minio --- lasuite/docs/docker-compose.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 3efe8dc..4bfdecb 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -115,7 +115,6 @@ services: #FRONTEND_CSS_URL=https://storage.yourdomain.tld/themes/custom.css #FRONTEND_FOOTER_FEATURE_ENABLED=true #FRONTEND_URL_JSON_FOOTER=https://docs.domain.tld/contents/footer-demo.json - env_file: - .env # networks: @@ -148,6 +147,8 @@ services: minio: image: minio/minio + env_file: + - .env environment: - MINIO_ROOT_USER=${MINIO_ROOT_USER} - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} From 308e01acdda47435fc953b03470f73dddca32b3c Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:50:17 -0500 Subject: [PATCH 12/26] add more env vars to minio --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 4bfdecb..e9c18c4 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -152,7 +152,7 @@ services: environment: - MINIO_ROOT_USER=${MINIO_ROOT_USER} - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} - - MINIO_BROWSER_REDIRECT_URL=https://${MINIO_HOST}/ui + - MINIO_BROWSER_REDIRECT_URL=https://ui.${MINIO_HOST} - SERVICE_FQDN_MINIO_9000 # - SERVICE_FQDN_MINIO_9001 healthcheck: From 00015d78e56c7dfaff2b165e69e8d8c930ffa0d2 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:52:26 -0500 Subject: [PATCH 13/26] add more env vars to minio --- lasuite/docs/docker-compose.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index e9c18c4..777b3b4 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -10,12 +10,6 @@ services: - .env environment: - PGDATA=/var/lib/postgresql/data/pgdata - # App database configuration - - DB_HOST=postgresql - - DB_NAME=docs - - DB_USER=docs - - DB_PASSWORD=${DB_PASSWORD} - - DB_PORT=5432 # Postgresql db container configuration - POSTGRES_DB=docs @@ -44,6 +38,12 @@ services: restart: always environment: # - SERVICE_FQDN_BACKEND_8000 + # App database configuration + - DB_HOST=postgresql + - DB_NAME=docs + - DB_USER=docs + - DB_PASSWORD=${DB_PASSWORD} + - DB_PORT=5432 # Common variables - DOCS_HOST=${DOCS_HOST} - S3_HOST=${S3_HOST} From ff7d9bccd1595dbe70bb9b76f3e96555171533ed Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 17:56:27 -0500 Subject: [PATCH 14/26] trynna fix nginx --- lasuite/docs/etc/default.conf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lasuite/docs/etc/default.conf b/lasuite/docs/etc/default.conf index 9430ab1..39f6458 100644 --- a/lasuite/docs/etc/default.conf +++ b/lasuite/docs/etc/default.conf @@ -7,14 +7,13 @@ upstream docs_frontend { } server { - listen 8083; + listen 80; server_name localhost; charset utf-8; # Disables server version feedback on pages and in headers server_tokens off; - proxy_ssl_server_name on; location @proxy_to_docs_backend { proxy_set_header Host $http_host; From f0b3cabf29382634cc2b56b3b6cfc8914de215fb Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 18:05:16 -0500 Subject: [PATCH 15/26] trynna fix nginx --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 777b3b4..b34e2bd 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -188,7 +188,7 @@ services: - SERVICE_FQDN_NGINXPROXY_80 volumes: - html:/usr/share/nginx/html - - ./etc/default.conf:/etc/nginx/templates/default.conf + - ./etc/default.conf:/etc/nginx/nginx.conf - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier From 330dc18ad3d1e2e54ba920f64e7824e8ae20e461 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 9 Apr 2025 18:08:35 -0500 Subject: [PATCH 16/26] trynna fix nginx again --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index b34e2bd..9440300 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -188,7 +188,7 @@ services: - SERVICE_FQDN_NGINXPROXY_80 volumes: - html:/usr/share/nginx/html - - ./etc/default.conf:/etc/nginx/nginx.conf + - ./etc/default.conf:/etc/nginx/default.conf - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier From 650ceef6de1f922d9b83126291e7296f7897ab83 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:05:51 -0500 Subject: [PATCH 17/26] added env to ngnx --- lasuite/docs/docker-compose.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 9440300..3a021ed 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -186,6 +186,8 @@ services: container_name: nginx-proxy environment: - SERVICE_FQDN_NGINXPROXY_80 + env_file: + - .env volumes: - html:/usr/share/nginx/html - ./etc/default.conf:/etc/nginx/default.conf From 3d5982d6d68a52b56e49c7e54b8e0d85a9b2eab8 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:15:32 -0500 Subject: [PATCH 18/26] changed nv vars in ngix --- lasuite/docs/etc/default.conf | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/lasuite/docs/etc/default.conf b/lasuite/docs/etc/default.conf index 39f6458..d3b5598 100644 --- a/lasuite/docs/etc/default.conf +++ b/lasuite/docs/etc/default.conf @@ -1,9 +1,9 @@ upstream docs_backend { - server ${BACKEND_HOST}:8000 fail_timeout=0; + server backend:8000 fail_timeout=0; } upstream docs_frontend { - server ${FRONTEND_HOST}:3000 fail_timeout=0; + server frontend:3000 fail_timeout=0; } server { @@ -96,10 +96,8 @@ server { proxy_set_header X-Amz-Content-SHA256 $authContentSha256; # Get resource from Minio - proxy_pass https://${S3_HOST}/${BUCKET_NAME}/; - proxy_set_header Host ${S3_HOST}; - - proxy_ssl_name ${S3_HOST}; + proxy_pass https://storage.app.monadical.io/docs-media-storage/; + proxy_set_header Host storage.app.monadical.io; add_header Content-Security-Policy "default-src 'none'" always; } From 22a043c33031bf8814760fe6659214e814bd3852 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:25:34 -0500 Subject: [PATCH 19/26] changed nv vars in ngix --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 3a021ed..c784b5b 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -190,7 +190,7 @@ services: - .env volumes: - html:/usr/share/nginx/html - - ./etc/default.conf:/etc/nginx/default.conf + - ./etc/default.conf:/etc/nginx/conf.d/default.conf:ro - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier From e0583f557d41e8af3d72ceea0450034bbf9cf2c7 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:34:52 -0500 Subject: [PATCH 20/26] changed to templates --- lasuite/docs/docker-compose.yaml | 2 +- .../templates/default.conf.template} | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) rename lasuite/docs/etc/{default.conf => nginx/templates/default.conf.template} (94%) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index c784b5b..9fa4561 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -190,7 +190,7 @@ services: - .env volumes: - html:/usr/share/nginx/html - - ./etc/default.conf:/etc/nginx/conf.d/default.conf:ro + - ./etc/nginx/templates:/etc/nginx/templates - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier diff --git a/lasuite/docs/etc/default.conf b/lasuite/docs/etc/nginx/templates/default.conf.template similarity index 94% rename from lasuite/docs/etc/default.conf rename to lasuite/docs/etc/nginx/templates/default.conf.template index d3b5598..c820022 100644 --- a/lasuite/docs/etc/default.conf +++ b/lasuite/docs/etc/nginx/templates/default.conf.template @@ -1,9 +1,9 @@ upstream docs_backend { - server backend:8000 fail_timeout=0; + server ${BACKEND_HOST}:8000 fail_timeout=0; } upstream docs_frontend { - server frontend:3000 fail_timeout=0; + server ${FRONTEND_HOST}:3000 fail_timeout=0; } server { @@ -96,8 +96,8 @@ server { proxy_set_header X-Amz-Content-SHA256 $authContentSha256; # Get resource from Minio - proxy_pass https://storage.app.monadical.io/docs-media-storage/; - proxy_set_header Host storage.app.monadical.io; + proxy_pass https://${S3_HOST}/${BUCKET_NAME}/; + proxy_set_header Host ${S3_HOST}; add_header Content-Security-Policy "default-src 'none'" always; } From 798ffb7cacdf37bbe47dc39eaf3c1a3fc3efa8f2 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:37:50 -0500 Subject: [PATCH 21/26] replace full dir' --- lasuite/docs/docker-compose.yaml | 2 +- .../docs/etc/nginx/{templates => }/default.conf.template | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) rename lasuite/docs/etc/nginx/{templates => }/default.conf.template (94%) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 9fa4561..ea15b77 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -190,7 +190,7 @@ services: - .env volumes: - html:/usr/share/nginx/html - - ./etc/nginx/templates:/etc/nginx/templates + - ./etc/nginx:/etc/nginx/conf.d - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier diff --git a/lasuite/docs/etc/nginx/templates/default.conf.template b/lasuite/docs/etc/nginx/default.conf.template similarity index 94% rename from lasuite/docs/etc/nginx/templates/default.conf.template rename to lasuite/docs/etc/nginx/default.conf.template index c820022..cf19cac 100644 --- a/lasuite/docs/etc/nginx/templates/default.conf.template +++ b/lasuite/docs/etc/nginx/default.conf.template @@ -1,9 +1,9 @@ upstream docs_backend { - server ${BACKEND_HOST}:8000 fail_timeout=0; + server backend:8000 fail_timeout=0; } upstream docs_frontend { - server ${FRONTEND_HOST}:3000 fail_timeout=0; + server frontend:3000 fail_timeout=0; } server { @@ -96,8 +96,8 @@ server { proxy_set_header X-Amz-Content-SHA256 $authContentSha256; # Get resource from Minio - proxy_pass https://${S3_HOST}/${BUCKET_NAME}/; - proxy_set_header Host ${S3_HOST}; + proxy_pass https://storage.app.monadical.io/docs-media-storage/; + proxy_set_header Host storage.app.monadical.io; add_header Content-Security-Policy "default-src 'none'" always; } From d5a7cc9779eafeba880e74419fed02afc1e9a444 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:45:02 -0500 Subject: [PATCH 22/26] volumes --- lasuite/docs/docker-compose.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index ea15b77..5874207 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -172,8 +172,6 @@ services: # - SERVICE_FQDN_FRONTEND_3000 env_file: - .env - volumes: - - ./etc/default.conf:/etc/nginx/templates/default.conf depends_on: backend: condition: From 59b8485dc74f5ab1d2536aea546741563a98d412 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 10:52:09 -0500 Subject: [PATCH 23/26] volumes --- lasuite/docs/etc/nginx/{default.conf.template => default.conf} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename lasuite/docs/etc/nginx/{default.conf.template => default.conf} (100%) diff --git a/lasuite/docs/etc/nginx/default.conf.template b/lasuite/docs/etc/nginx/default.conf similarity index 100% rename from lasuite/docs/etc/nginx/default.conf.template rename to lasuite/docs/etc/nginx/default.conf From 7e5cf16b191e948127a2113a5e855bdde5eb1317 Mon Sep 17 00:00:00 2001 From: Mathieu Virbel Date: Thu, 10 Apr 2025 11:31:47 -0600 Subject: [PATCH 24/26] use nginx directly instead of nginxproxy --- lasuite/docs/docker-compose.yaml | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 5874207..3790406 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -2,7 +2,7 @@ services: postgresql: image: postgres:16 healthcheck: - test: [ "CMD", "pg_isready", "-q", "-U", "docs", "-d", "docs" ] + test: ["CMD", "pg_isready", "-q", "-U", "docs", "-d", "docs"] interval: 1s timeout: 2s retries: 300 @@ -22,7 +22,7 @@ services: image: redis:5 restart: always volumes: - - 'redis-data:/data' + - "redis-data:/data" healthcheck: test: - CMD @@ -120,7 +120,7 @@ services: # networks: # - proxy-tier healthcheck: - test: [ "CMD", "python", "manage.py", "check" ] + test: ["CMD", "python", "manage.py", "check"] interval: 15s timeout: 30s retries: 20 @@ -150,10 +150,10 @@ services: env_file: - .env environment: - - MINIO_ROOT_USER=${MINIO_ROOT_USER} - - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} - - MINIO_BROWSER_REDIRECT_URL=https://ui.${MINIO_HOST} - - SERVICE_FQDN_MINIO_9000 + - MINIO_ROOT_USER=${MINIO_ROOT_USER} + - MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD} + - MINIO_BROWSER_REDIRECT_URL=https://ui.${MINIO_HOST} + - SERVICE_FQDN_MINIO_9000 # - SERVICE_FQDN_MINIO_9001 healthcheck: test: ["CMD", "mc", "ready", "local"] @@ -163,7 +163,7 @@ services: entrypoint: "" command: minio server /data volumes: - - ./data/minio:/data + - ./data/minio:/data frontend: image: lasuite/impress-frontend:latest @@ -174,25 +174,22 @@ services: - .env depends_on: backend: - condition: - service_healthy + condition: service_healthy # networks: # - proxy-tier - nginxproxy: - image: nginxproxy/nginx-proxy - container_name: nginx-proxy + nginx: + image: nginx environment: - - SERVICE_FQDN_NGINXPROXY_80 + - SERVICE_FQDN_NGINX_80 env_file: - .env volumes: - html:/usr/share/nginx/html - ./etc/nginx:/etc/nginx/conf.d - - /var/run/docker.sock:/tmp/docker.sock:ro + # - /var/run/docker.sock:/tmp/docker.sock:ro # networks: # - proxy-tier - # networks: # proxy-tier: # external: true From 0b6bd2dff285c617cf0406d8d35496ba57c42f28 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 15:38:59 -0500 Subject: [PATCH 25/26] added one more scope --- lasuite/docs/docker-compose.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 3790406..2b9c6cb 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -96,7 +96,7 @@ services: - OIDC_RP_CLIENT_ID=${OIDC_RP_CLIENT_ID} - OIDC_RP_CLIENT_SECRET=${OIDC_RP_CLIENT_SECRET} - OIDC_RP_SIGN_ALGO=RS256 - - OIDC_RP_SCOPES="openid email" + - OIDC_RP_SCOPES="openid email profile" #USER_OIDC_FIELD_TO_SHORTNAME #USER_OIDC_FIELDS_TO_FULLNAME From 557ad475b5e9df93f828f5c0cdc50b94102bdaf3 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 10 Apr 2025 16:13:54 -0500 Subject: [PATCH 26/26] retrying --- lasuite/docs/docker-compose.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lasuite/docs/docker-compose.yaml b/lasuite/docs/docker-compose.yaml index 2b9c6cb..f1dcbdc 100644 --- a/lasuite/docs/docker-compose.yaml +++ b/lasuite/docs/docker-compose.yaml @@ -96,7 +96,9 @@ services: - OIDC_RP_CLIENT_ID=${OIDC_RP_CLIENT_ID} - OIDC_RP_CLIENT_SECRET=${OIDC_RP_CLIENT_SECRET} - OIDC_RP_SIGN_ALGO=RS256 - - OIDC_RP_SCOPES="openid email profile" + - OIDC_RP_SCOPES=openid email profile + - OIDC_STORE_ID_TOKEN=True + - OIDC_STORE_ACCESS_TOKEN=True #USER_OIDC_FIELD_TO_SHORTNAME #USER_OIDC_FIELDS_TO_FULLNAME