wm-fontis-tibi-2023/docker-compose-local.yml

180 lines
5.8 KiB
YAML
Raw Permalink Normal View History

2023-07-13 13:12:19 +02:00
version: "3.8"
2023-07-13 15:14:19 +02:00
name: fontis
2023-07-13 13:12:19 +02:00
services:
docpress:
profiles:
- docpress
image: node:18
volumes:
- ./:/data
- ./tmp:/tmp
- ./tmp/nonexistent:/nonexistent
working_dir: /data/docs
command: sh -c "yarn install && yarn docpress:serve"
expose:
- 3000
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-docpress
user: ${UID}:${GID}
yarnstart:
profiles:
- tibi
- tibi-dev
image: node:18
volumes:
- ./:/data
- ./tmp:/tmp
- ./tmp/nonexistent:/nonexistent
2023-08-15 14:48:43 +02:00
- ./tmp/.npm:/.npm
2023-07-13 13:12:19 +02:00
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
user: ${UID}:${GID}
tibiserver:
profiles:
- tibi
image: gitbase.de/cms/tibi-server
volumes:
- ./:/data
environment:
DB_DIAL: mongodb://mongo
DB_PREFIX: ${TIBI_PREFIX}
MAIL_HOST: maildev:25
SECURITY_ALLOWABSOLUTEPATHS: "true"
SECURITY_ALLOWUPPERPATHS: "true"
depends_on:
- mongo
expose:
- 8080
labels:
- traefik.enable=true
- traefik.http.services.${PROJECT_NAME}-tibiserver.loadbalancer.server.port=8080
- online.testversion.code.subdomain=${PROJECT_NAME}-tibiserver
tibiserver-dev:
hostname: tibiserver
build:
context: ./
dockerfile: ./../../cms/tibi-server/Dockerfile.air
profiles:
- tibi-dev
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
SECURITY_ALLOWABSOLUTEPATHS: "true"
SECURITY_ALLOWUPPERPATHS: "true"
depends_on:
- mongo
user: ${UID}:${GID}
expose:
- 8080
labels:
- traefik.enable=true
- traefik.http.services.${PROJECT_NAME}-tibiserver.loadbalancer.server.port=8080
- online.testversion.code.subdomain=${PROJECT_NAME}-tibiserver
tibiadmin:
profiles:
- tibi
image: gitbase.de/cms/tibi-admin
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:
profiles:
- tibi
- tibi-dev
image: gitbase.de/server/mongo:4.2
volumes:
- ./tmp/mongo-data:/data/db
user: ${UID}:${GID}
adminmongo:
profiles:
- tibi
- tibi-dev
image: gitbase.de/server/adminmongo
environment:
CONN_NAME: mongo
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:
profiles:
- tibi
- tibi-dev
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
chisel:
profiles:
- chisel
image: jpillora/chisel
expose:
- 8080
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}-chisel
command: server --port 8080 --auth coder:coder