Files
alex c08dc6b088
Deploy Containers / Prepare (push) Successful in 5s
organize
2026-05-20 20:31:24 -04:00

54 lines
1.5 KiB
YAML

---
- name: Deploy API Database
include_role:
name: docker
vars:
name: api_postgres
network_name: api
directories:
- "{{ data_dir }}/api/db"
image:
name: postgres
tag: "17"
networks:
- name: api
volumes:
- "{{ data_dir }}/api/db:/var/lib/postgresql/data"
env:
POSTGRES_USER: "api"
POSTGRES_PASSWORD: "{{ API_POSTGRES_PASSWORD }}"
PGDATA: "/var/lib/postgresql/data/pgdata"
- name: Deploy API
include_role:
name: docker
vars:
name: api
network_name: api
networks:
- name: api
- name: "{{ docker_network_name }}"
image:
name: git.alexav.gg/alex/api
tag: latest
env:
NODE_ENV: "production"
VERSION: "v4"
REDIS_URL: "redis://redis:6379"
ADMIN_KEY: "{{ API_ADMIN_KEY }}"
DATABASE_URL: "{{ API_DATABASE_URL }}"
LASTFM_API_KEY: "{{ API_LASTFM_API_KEY }}"
STEAM_API_KEY: "{{ API_STEAM_API_KEY }}"
JWT_KEY: "{{ API_JWT_KEY }}"
DISCORD_PUBLIC_KEY: "{{ API_DISCORD_PUBLIC_KEY }}"
DISCORD_APP_ID: "{{ API_DISCORD_APP_ID }}"
DISCORD_BOT_TOKEN: "{{ API_DISCORD_BOT_TOKEN }}"
TMDB_API_KEY: "{{ API_TMDB_TOKEN }}"
STORAGE_KEY: "{{ API_STORAGE_KEY }}"
labels:
traefik.enable: "true"
traefik.http.routers.aapi.rule: Host(`api.alexav.gg`)
traefik.http.routers.aapi.entrypoints: webSecure
traefik.http.routers.aapi.tls.certresolver: letsencrypt
traefik.http.services.aapi.loadbalancer.server.url: http://api:3000