Skip to content
Extraits de code Groupes Projets
Valider af458aae rédigé par Rémi - Le Filament's avatar Rémi - Le Filament
Parcourir les fichiers

Add extra app to be deployed in Odoo compose

parent 8e3bada6
Branches
Étiquettes v1.1.0
Aucune requête de fusion associée trouvée
......@@ -100,6 +100,11 @@ odoo_prod_example: # To be renamed odoo_prod
## (if URLs need to be accessible from both prod and non-prod instances, use whitelisted_urls instead)
# extra_urls:
# - "docs.example.org"
## OTIONAL parameters for deploying another app (for instance a JS app)
# extra_app:
# - name: odoo_app
# - image: nginx:latest
# - url: app.example.org
odoo_nonprod_instances_example: # To be renamed odoo_nonprod_instances
- name: odoo_test
......@@ -160,6 +165,11 @@ odoo_nonprod_instances_example: # To be renamed odoo_nonprod_instances
- account_bank_statement_import_ofx
extra_urls:
- "docs-test.example.org"
## OTIONAL parameters for deploying another app (for instance a JS app)
# extra_app:
# - name: odootest_app
# - image: nginx:latest
# - url: app-test.example.org
```
Also backups are designed to be performed only on prod instances, backups can however be restored on every non prod instance.
......
......@@ -179,6 +179,22 @@ services:
volumes:
- metabase:/metabase-data:z
{% endif %}
{% if odoo_prod.extra_app is defined %}
app:
image: {{ odoo_prod.extra_app.image }}
container_name: {{ odoo_prod.extra_app.name }}
restart: unless-stopped
networks:
inverseproxy_app:
labels:
co.elastic.logs/enabled: "false"
traefik.docker.network: "inverseproxy_app"
traefik.enable: "true"
traefik.http.routers.{{ odoo_prod.extra_app.name | lower | regex_replace('_','') }}.rule: "Host(`{{ odoo_prod.extra_app.url }}`)"
traefik.http.routers.{{ odoo_prod.extra_app.name | lower | regex_replace('_','') }}.service: "{{ odoo_prod.extra_app.name | lower | regex_replace('_','') }}"
traefik.http.services.{{ odoo_prod.extra_app.name | lower | regex_replace('_','') }}.loadbalancer.server.port: "80"
{% endif %}
networks:
default:
......@@ -187,6 +203,10 @@ networks:
encrypted: 1
inverseproxy_shared:
external: true
{% if odoo_prod.extra_app is defined %}
inverseproxy_app:
external: true
{% endif %}
{% if metabase %}
inverseproxy_bi:
external: true
......
......@@ -110,6 +110,22 @@ services:
restart: unless-stopped
{% endfor %}
{% endif %}
{% if item.extra_app is defined %}
app:
image: {{ item.extra_app.image }}
container_name: {{ item.extra_app.name }}
restart: unless-stopped
networks:
inverseproxy_app:
labels:
co.elastic.logs/enabled: "false"
traefik.docker.network: "inverseproxy_app"
traefik.enable: "true"
traefik.http.routers.{{ item.extra_app.name | lower | regex_replace('_','') }}.rule: "Host(`{{ item.extra_app.url }}`)"
traefik.http.routers.{{ item.extra_app.name | lower | regex_replace('_','') }}.service: "{{ item.extra_app.name | lower | regex_replace('_','') }}"
traefik.http.services.{{ item.extra_app.name | lower | regex_replace('_','') }}.loadbalancer.server.port: "80"
{% endif %}
networks:
default:
......@@ -120,6 +136,10 @@ networks:
external: true
inverseproxy_smtp:
external: true
{% if item.extra_app is defined %}
inverseproxy_app:
external: true
{% endif %}
{% if restrict_internet_access %}
{% if whitelisted_urls is defined %}
whitelists_proxy:
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter