Files
tibi-svelte-starter/docker-compose-local.yml
2025-03-26 17:44:06 +00:00

120 lines
4.0 KiB
YAML

name: ${PROJECT_NAME}
services:
yarnstart:
image: node:18
user: ${UID}:${GID}
volumes:
- ./:/data
working_dir: /data
command: sh -c "yarn install && API_BASE=http://tibiserver:8080/api/v1/_/${TIBI_NAMESPACE} yarn start"
expose:
- 3000
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}
- traefik.http.routers.${PROJECT_NAME}-yarnstart.middlewares=${PROJECT_NAME}-yarnstart
- traefik.http.middlewares.${PROJECT_NAME}-yarnstart.basicauth.usersfile=${PWD}/.basic-auth-web
tibiserver:
image: gitbase.de/cms/tibi-server
profiles:
- tibi
volumes:
- ./:/data
environment:
DB_DIAL: mongodb://mongo
DB_PREFIX: ${TIBI_PREFIX}
MAIL_HOST: maildev:25
depends_on:
- mongo
tibiserver-dev:
hostname: tibiserver
profiles:
- tibi-dev
image: cosmtrek/air
volumes:
- ./:/data
- ./../../cms/tibi-server:/tibi-server
- ./../../../../tmp/go/pkg:/go/pkg
working_dir: /tibi-server
environment:
GOCACHE: /tmp/
DB_DIAL: mongodb://mongo
DB_PREFIX: ${TIBI_PREFIX}
MAIL_HOST: maildev:25
depends_on:
- mongo
user: ${UID}:${GID}
tibiadmin:
image: gitbase.de/cms/tibi-admin
profiles:
- tibi
environment:
INDEX: spa.html
WEBROOT: /data
API: /api:http://tibiserver:8080/api/v1
PORT: 80
depends_on:
- tibiserver
expose:
- 80
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-tibiadmin
- traefik.http.routers.${PROJECT_NAME}-tibiadmin.middlewares=${PROJECT_NAME}-tibiadmin
- traefik.http.middlewares.${PROJECT_NAME}-tibiadmin.basicauth.usersfile=${PWD}/.basic-auth-code
tibiadmin-dev:
profiles:
- tibi-dev
image: node:18
volumes:
- ./../../cms/tibi-admin:/data
working_dir: /data
command: sh -c "yarn install && API_BASE=http://tibiserver:8080/api/v1 yarn start:code-server"
expose:
- 3000
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-tibiadmin-dev
- traefik.http.routers.${PROJECT_NAME}-tibiadmin-dev.middlewares=${PROJECT_NAME}-tibiadmin-dev
- traefik.http.middlewares.${PROJECT_NAME}-tibiadmin-dev.basicauth.usersfile=${PWD}/.basic-auth-code
user: ${UID}:${GID}
mongo:
image: gitbase.de/server/mongo:4.2
user: ${UID}:${GID}
volumes:
- ./tmp/mongo-data:/data/db
adminmongo:
image: gitbase.de/server/adminmongo
environment:
CONN_NAME: mongo
# DB_USERNAME: root
# DB_PASSWORD: root
DB_HOST: mongo
PORT: 1234
expose:
- 1234
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-adminmongo
- traefik.http.routers.${PROJECT_NAME}-adminmongo.middlewares=${PROJECT_NAME}-adminmongo
- traefik.http.middlewares.${PROJECT_NAME}-adminmongo.basicauth.usersfile=${PWD}/.basic-auth-code
maildev:
image: maildev/maildev
command: node bin/maildev --web 1080 --smtp 25 -v --hide-extensions=STARTTLS
expose:
- 1080
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-maildev
- traefik.http.services.${PROJECT_NAME}-maildev.loadbalancer.server.port=1080
- traefik.http.routers.${PROJECT_NAME}-maildev.middlewares=${PROJECT_NAME}-maildev
- traefik.http.middlewares.${PROJECT_NAME}-maildev.basicauth.usersfile=${PWD}/.basic-auth-code