mirror of
https://github.com/ChristianLight/tutor.git
synced 2024-09-27 19:59:02 +00:00
728ef966dc
- 💥[Improvement] Upgrade Open edX to Koa - 💥 Setting changes: - The ``ACTIVATE_HTTPS`` setting was renamed to ``ENABLE_HTTPS``. - Other ``ACTIVATE_*`` variables were all renamed to ``RUN_*``. - The ``WEB_PROXY`` setting was removed and ``RUN_CADDY`` was added. - The ``NGINX_HTTPS_PORT`` setting is deprecated. - Architectural changes: - Use Caddy as a web proxy for automated SSL/TLS certificate generation: - Nginx no longer listens to port 443 for https traffic - The Caddy configuration file comes with a new ``caddyfile`` patch for much simpler SSL/TLS management. - Configuration files for web proxies are no longer provided. - Kubernetes deployment no longer requires setting up a custom Ingress resource or custom manager. - Gunicorn and Whitenoise are replaced by uwsgi: this increases boostrap performance and makes it no longer necessary to mount media folders in the Nginx container. - Replace memcached and rabbitmq by redis. - Additional features: - Make it possible to disable all plugins at once with ``plugins disable all``. - Add ``tutor k8s wait`` command to wait for a pod to become ready - Faster, more reliable static assets with local memory caching - Deprecation: proxy files for Apache and Nginx are no longer provided out of the box. - Removed plugin `{{ patch (...) }}` statements: - "https-create", "k8s-ingress-rules", "k8s-ingress-tls-hosts": these are no longer necessary. Instead, declare your app in the "caddyfile" patch. - "local-docker-compose-nginx-volumes": this patch was primarily used to serve media assets. The recommended is now to serve assets with uwsgi.
36 lines
1.1 KiB
YAML
36 lines
1.1 KiB
YAML
version: "3.7"
|
|
services:
|
|
{% if RUN_CADDY %}
|
|
# Web proxy for SSL termination
|
|
caddy:
|
|
image: {{ DOCKER_IMAGE_CADDY }}
|
|
restart: unless-stopped
|
|
ports:
|
|
- "80:80"
|
|
{% if ENABLE_HTTPS %}- "443:443"{% endif %}
|
|
volumes:
|
|
- ../apps/caddy/Caddyfile:/etc/caddy/Caddyfile:ro
|
|
{% if ENABLE_HTTPS %}- ../../data/caddy:/data{% endif %}
|
|
{% endif %}
|
|
|
|
# Web server
|
|
nginx:
|
|
image: {{ DOCKER_IMAGE_NGINX }}
|
|
restart: unless-stopped
|
|
{% if not RUN_CADDY %}
|
|
ports:
|
|
- "{{ NGINX_HTTP_PORT }}:80"
|
|
{% endif %}
|
|
{% if RUN_CADDY and not ENABLE_HTTPS %}
|
|
networks:
|
|
default:
|
|
# These aliases are for internal communication between containers when running locally with *.local.overhang.io hostnames.
|
|
aliases:
|
|
- "{{ LMS_HOST }}"
|
|
{{ patch("local-docker-compose-nginx-aliases")|indent(10) }}
|
|
{% endif %}
|
|
volumes:
|
|
- ../apps/nginx:/etc/nginx/conf.d/:ro
|
|
depends_on: {{ [("lms", RUN_LMS), ("cms", RUN_CMS)]|list_if }}
|
|
|
|
{{ patch("local-docker-compose-prod-services")|indent(2) }} |