Files
kontextwerk/docker-compose-local.yml
2025-10-02 17:27:06 +00:00

162 lines
5.0 KiB
YAML

name: ${PROJECT_NAME}
services:
yarnstart:
image: node:20
volumes:
- ./:/data
- ./tmp:/tmp
- ./tmp/nonexistent:/nonexistent
- ./tmp/.npm:/.npm
- ./tmp/.yarn:/.yarn
working_dir: /data
command: sh -c "yarn install && API_BASE=http://tibiserver:8080/api/v1/_/${TIBI_NAMESPACE} yarn start${START_SCRIPT}"
expose:
- 3000
labels:
- traefik.enable=true
- online.testversion.code.subdomain=${PROJECT_NAME}
user: ${CODER_UID}:${CODER_GID}
tibiserver:
profiles:
- tibi
- admin-dev
image: gitbase.de/cms/tibi-server:dev
volumes:
- ./:/data
environment:
DB_DIAL: mongodb://mongo
DB_PREFIX: ${TIBI_PREFIX}
MAIL_HOST: maildev:25
SECURITY_ALLOWABSOLUTEPATHS: "true"
SECURITY_ALLOWUPPERPATHS: "true"
depends_on:
- mongo
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: ./../../cms/tibi-server/
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: ${CODER_UID}:${CODER_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
tibiadmin-dev:
profiles:
- tibi-dev
- admin-dev
image: node:20
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
user: ${CODER_UID}:${CODER_GID}
mongo:
image: gitbase.de/server/mongo:4.2
volumes:
- ./tmp/mongo-data:/data/db
user: ${CODER_UID}:${CODER_GID}
adminmongo:
image: gitbase.de/server/adminmongo
environment:
CONN_NAME: mongo
# DB_USERNAME: root
# DB_PASSWORD: root
DB_HOST: mongo
PORT: 1234
# ports:
# - ${ADMINMONGO_PORT:-3003}:1234
expose:
- 1234
#networks:
# - default
# - traefik_web
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
# ports:
# - ${MAILDEV_PORT:-3004}:80
command: node bin/maildev --web 1080 --smtp 25 -v --hide-extensions=STARTTLS
expose:
- 1080
#networks:
# - default
# - traefik_web
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
healthcheck:
test: ["NONE"]
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
#networks:
# traefik_web:
# external: true