Files
docker-compose/__swarm/kestra/kestra-swarm.yml
2025-12-05 23:31:00 +01:00

99 lines
2.6 KiB
YAML

services:
kestra:
command: server standalone --worker-thread=128
environment:
SECRET_MYPASSWORD: bDRjMWo0eWQzM0R1NWxv
SECRET_GITLAB: Z2xwYXQtdWotbi1lRWZUWTM5OFBFNHZLU1M=
KESTRA_CONFIGURATION: |
datasources:
postgres:
url: jdbc:postgresql://postgres:5432/kestra
driverClassName: org.postgresql.Driver
username: kestra
password: k3str4
kestra:
server:
basicAuth:
enabled: false
username: "jaydee@sectorq.eu" # it must be a valid email address
password: ${PASSWORD}
repository:
type: postgres
storage:
type: local
local:
basePath: "/app/storage"
queue:
type: postgres
tasks:
tmpDir:
path: /tmp/kestra-wd/tmp
url: http://localhost:8080/
tutorial-flows:
enabled: false
micronaut:
server:
cors:
enabled: true
image: ${DOCKER_REGISTRY:-}kestra/kestra:${KESTRA_VERSION:-latest}
ports:
- target: 8080
published: 8980
protocol: tcp
mode: ingress
- target: 8081
published: 8981
protocol: tcp
mode: ingress
user: root
volumes:
- /etc/localtime:/etc/localtime:ro
- data:/app/storage
- /var/run/docker.sock:/var/run/docker.sock
- /tmp/kestra-wd:/tmp/kestra-wd
deploy:
labels:
com.centurylinklabs.watchtower.enable: 'true'
homepage.container: kestra_kestra
homepage.description: Automation
homepage.group: Infrastructure
homepage.href: https://${APPNAME}.sectorq.eu
homepage.icon: ${APPNAME}.png
homepage.name: Kestra
homepage.server: my-docker-swarm
homepage.weight: '1'
wud.display.icon: mdi:evernote
wud.watch: 'true'
wud.watch.digest: 'true'
replicas: 1
placement:
constraints:
- node.role == manager
postgres:
environment:
POSTGRES_DB: kestra
POSTGRES_PASSWORD: k3str4
POSTGRES_USER: kestra
healthcheck:
interval: 30s
retries: 10
test:
- CMD-SHELL
- pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}
timeout: 10s
image: ${DOCKER_REGISTRY:-}postgres:16
volumes:
- db:/var/lib/postgresql/data
deploy:
labels:
wud.watch: 'false'
replicas: 1
placement:
constraints:
- node.role == manager
volumes:
data:
driver: local
db:
driver: local