From 2c8d5cf6982beac34a7f5e87e64c30313a63972c Mon Sep 17 00:00:00 2001 From: Michael Becker Date: Fri, 25 Jul 2025 19:58:48 -0400 Subject: [PATCH] Initial commit --- .gitmodules | 6 +++ build | 15 +++++++ docker-compose.yml | 80 +++++++++++++++++++++++++++++++++++ dockerfiles/tenant.Dockerfile | 3 ++ mocha-php | 1 + uwt-web | 1 + vhost-tenant.d/localhost | 5 +++ 7 files changed, 111 insertions(+) create mode 100755 build create mode 100644 docker-compose.yml create mode 100644 dockerfiles/tenant.Dockerfile create mode 160000 mocha-php create mode 160000 uwt-web create mode 100644 vhost-tenant.d/localhost diff --git a/.gitmodules b/.gitmodules index 1c3cdfa..9f84b91 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,9 @@ [submodule "mocha-dotnet"] path = mocha-dotnet url = gitea@gitea.azcona-becker.net:mochapowered/mocha-dotnet +[submodule "mocha-php"] + path = mocha-php + url = gitea@gitea.azcona-becker.net:mochapowered/mocha-php +[submodule "uwt-web"] + path = uwt-web + url = gitea@gitea.azcona-becker.net:alcetech/uwt-web diff --git a/build b/build new file mode 100755 index 0000000..e13bf0f --- /dev/null +++ b/build @@ -0,0 +1,15 @@ +#!/bin/bash + +pushd mocha-dotnet +./build +popd + +pushd mocha-dotnet/mocha-common/mocha-common +./build +popd + +pushd uwt-web +./build.sh +popd + + diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..5eaee93 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,80 @@ +services: + mocha-oms: + image: mcr.microsoft.com/dotnet/runtime:8.0 + command: dotnet /oms/Mocha.Oms.Server.dll + environment: + OMS_SERVERPORT: 3012 + OMS_DATABASENAME: mochadb + OMS_USERNAME: mochadb + OMS_PASSWORD: '93X37B]@k(svLmFM' + ports: + - "14436:4436" + networks: + - app-tenant + volumes: + - ./mocha-dotnet/mocha-dotnet/src/app/Mocha.Oms.Server/bin/Debug/net8.0:/oms + - ./mocha-dotnet/mocha-common/mocha-common/output:/usr/share/mocha/system + + mochaui-tenant: + build: + context: . + dockerfile: ./dockerfiles/tenant.Dockerfile + environment: + VIRTUAL_HOST: localhost + # OMS_TYPE: mysql + # OMS_SERVERNAME: db + # OMS_SERVERPORT: 3306 + # OMS_DATABASENAME: mochadb + # OMS_USERNAME: mochadb + # OMS_PASSWORD: '93X37B]@k(svLmFM' + OMS_TYPE: api + OMS_SERVERNAME: mocha-oms + OMS_SERVERPORT: 4436 + THEMES_PATH: /css/themes/{ThemeName}.css + COMMON_THEMES_PATH: /css/common.css + # # THEMES_PATH: /themes/{ThemeName}/theme.css + networks: + - app-tenant + volumes: + - ./mocha-php/mocha-php/src/mocha-php:/var/www/html + - ./mocha-php/phast/lib/phast/server:/usr/local/lib/php/lib/phast + - ./mocha-php/phast/lib/phast/client/scripts:/var/www/html/scripts/phast + + static: + image: nginx:alpine + volumes: + - ./uwt-web/output:/usr/share/nginx/html + networks: + - app-tenant + - app-manager + + #nginx-proxy-manager: + # depends_on: + # - static + # - mochaui-manager + # - phpmyadmin + # image: jwilder/nginx-proxy + # ports: + # - "8082:80" + # volumes: + # - /var/run/docker.sock:/tmp/docker.sock:ro + # - ./vhost-manager.d:/etc/nginx/vhost.d:ro + + nginx-proxy-tenant: + depends_on: + - static + - mocha-oms + image: jwilder/nginx-proxy + networks: + - app-tenant + - proxy + ports: + - "3333:80" + volumes: + - /var/run/docker.sock:/tmp/docker.sock:ro + - ./vhost-tenant.d:/etc/nginx/vhost.d:ro + +networks: + proxy: + app-tenant: + app-manager: diff --git a/dockerfiles/tenant.Dockerfile b/dockerfiles/tenant.Dockerfile new file mode 100644 index 0000000..d6ff30c --- /dev/null +++ b/dockerfiles/tenant.Dockerfile @@ -0,0 +1,3 @@ +FROM php:8.2-apache + +RUN a2enmod rewrite diff --git a/mocha-php b/mocha-php new file mode 160000 index 0000000..b44f643 --- /dev/null +++ b/mocha-php @@ -0,0 +1 @@ +Subproject commit b44f6431e4e3204ea58c98b9081d9ce0033fecf3 diff --git a/uwt-web b/uwt-web new file mode 160000 index 0000000..61617c5 --- /dev/null +++ b/uwt-web @@ -0,0 +1 @@ +Subproject commit 61617c542caf42cc6831ac0e3ffe3aaca3413e3b diff --git a/vhost-tenant.d/localhost b/vhost-tenant.d/localhost new file mode 100644 index 0000000..4130375 --- /dev/null +++ b/vhost-tenant.d/localhost @@ -0,0 +1,5 @@ + +location /css { + proxy_pass http://static:80/; +} +