56 lines
2.1 KiB
YAML
56 lines
2.1 KiB
YAML
---
|
|
- name: deploy ocean
|
|
hosts: all
|
|
tasks:
|
|
- name: Stop ocean container if it exists
|
|
docker_container:
|
|
name: ocean
|
|
state: absent
|
|
- name: Deploy ocean Docker container
|
|
docker_container:
|
|
name: ocean
|
|
image: ocean:{{semaphore_vars.task_details.incoming_version}}
|
|
state: started
|
|
restart_policy: always
|
|
networks:
|
|
- name: traefik
|
|
env:
|
|
SERVER_BASE_URL: "{{SERVER_BASE_URL}}"
|
|
DEBUG: "{{DEBUG}}"
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.http.routers.ocean.entrypoints: "web,websecure"
|
|
traefik.http.routers.ocean.rule: "HostRegexp(`{subdomain:[a-zA-Z0-9-]+}.panel.eron.co`)"
|
|
traefik.http.services.ocean.loadbalancer.server.port: "3000"
|
|
traefik.http.routers.ocean.tls: "true"
|
|
traefik.http.routers.ocean.tls.certresolver: "letsencrypt"
|
|
traefik.http.routers.ocean.service: "ocean"
|
|
traefik.http.routers.ocean.tls.domains[0].main: "panel.eron.co"
|
|
traefik.http.routers.ocean.tls.domains[0].sans: "*.panel.eron.co"
|
|
- name: Stop ocean2 container if it exists
|
|
docker_container:
|
|
name: ocean2
|
|
state: absent
|
|
- name: Deploy ocean2 Docker container
|
|
docker_container:
|
|
name: ocean2
|
|
image: ocean:{{semaphore_vars.task_details.incoming_version}}
|
|
state: started
|
|
restart_policy: always
|
|
networks:
|
|
- name: traefik
|
|
env:
|
|
SERVER_BASE_URL: "{{SERVER_BASE_URL}}"
|
|
DEBUG: "{{DEBUG}}"
|
|
labels:
|
|
traefik.enable: "true"
|
|
traefik.http.routers.ocean2.entrypoints: "web,websecure"
|
|
traefik.http.routers.ocean2.rule: "HostRegexp(`{subdomain:[a-zA-Z0-9-]+}.demo.eron.co`)"
|
|
traefik.http.services.ocean2.loadbalancer.server.port: "3000"
|
|
traefik.http.routers.ocean2.tls: "true"
|
|
traefik.http.routers.ocean2.tls.certresolver: "letsencrypt"
|
|
traefik.http.routers.ocean2.service: "ocean2"
|
|
traefik.http.routers.ocean2.tls.domains[0].main: "demo.eron.co"
|
|
traefik.http.routers.ocean2.tls.domains[0].sans: "*.demo.eron.co"
|
|
|