playbooks/deploy inception.yml

54 lines
2.0 KiB
YAML

---
- name: update inception
hosts: all
tasks:
- name: Stop Inception container if it exists
docker_container:
name: inception
state: absent
- name: Deploy Inception Docker container
docker_container:
name: inception
image: inception:{{semaphore_vars.task_details.incoming_version}}
state: started
restart_policy: always
networks:
- name: traefik
- name: inception
- name: redis
- name: rabbitmq
- name: minio
- name: mongo
exposed_ports:
- "3000"
env:
sdxl_endpoint: "{{ sdxl_endpoint }}"
PORT: "{{ PORT }}"
ACTION_SERVICE: "true"
CONFIG_SERVICE: "false"
PRODUCER_SERVICE: "true"
QUERY_SERVICE: "true"
RABBIT_MQ_CONSUMER: "true"
AUTH_SERVICE: "true"
MONGODB_URI: "{{ MONGODB_URI }}"
ELASTICSEARCH_URI: "{{ ELASTICSEARCH_URI }}"
RABBIT_MQ_URI: "{{ RABBIT_MQ_URI }}"
REDIS_URI: "{{ REDIS_URI }}"
MINIO_URL: "{{ MINIO_URL }}"
MINIO_ENDPOINT: "{{ MINIO_ENDPOINT }}"
MINIO_PORT: "{{ MINIO_PORT }}"
MINIO_USE_SSL: "{{ MINIO_USE_SSL }}"
MINIO_ACCESS_KEY: "{{ MINIO_ACCESS_KEY }}"
MINIO_SECRET_KEY: "{{ MINIO_SECRET_KEY }}"
labels:
traefik.enable: "true"
traefik.docker.network: "traefik"
traefik.http.routers.inception.entrypoints: "web,websecure"
traefik.http.routers.inception.rule: "Host(`inception.eron.co`) || HostRegexp(`{subdomain:[a-zA-Z0-9-]+}.inception.eron.co`)"
traefik.http.services.inception.loadbalancer.server.port: "3000"
traefik.http.routers.inception.tls: "true"
traefik.http.routers.inception.tls.certresolver: "letsencrypt"
traefik.http.routers.inception.service: "inception"
traefik.http.routers.inception.tls.domains[0].main: "inception.eron.co"
traefik.http.routers.inception.tls.domains[0].sans: "*.inception.eron.co"