diff --git a/Taskfile.yml b/Taskfile.yml index 5caa9f9..c39e9ab 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -1,14 +1,29 @@ # https://taskfile.dev - version: '3' tasks: build: desc: Build Docker images for Mocha cmds: + - ninja - docker compose -f compose/docker-compose.prod.yml build run: desc: Spin up a temporary Mocha instance in Docker for development cmds: + - ninja - docker compose -f compose/docker-compose.dev.yml up + + new: + desc: Create a new Mochafile + cmds: + - cp compose/docker-compose.dev.yml docker-compose.yml + - touch Mochafile + + clean: + desc: Bring down all development Docker containers + dir: '{{.USER_WORKING_DIR}}' + #preconditions: + # - test -f docker-compose.yml + cmds: + - docker compose -f compose/docker-compose.dev.yml down diff --git a/compose/docker-compose.dev.yml b/compose/docker-compose.dev.yml index f3aa011..ba94132 100644 --- a/compose/docker-compose.dev.yml +++ b/compose/docker-compose.dev.yml @@ -1,22 +1,40 @@ +# docker-compose for Mocha +# Copyright (C) 2025 Michael Becker + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + services: + # mocha-oms runs the Object Management Service which loads MCL/MCX libraries and snapshots and provides an API to be consumed by mochaui-tenant. mocha-oms: build: context: .. image: mcr.microsoft.com/dotnet/runtime:8.0 command: dotnet /oms/Mocha.Oms.Server.dll environment: - OMS_SERVERPORT: 3012 + OMS_SERVERPORT: 3012 # default is 4436; make sure they match! OMS_DATABASENAME: mochadb OMS_USERNAME: mochadb OMS_PASSWORD: '93X37B]@k(svLmFM' ports: - - "14436:4436" + - "13012:3012" 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 runs the PHP for the Mocha User Interface Service. it communicates with the OMS via API calls on the specified port. mochaui-tenant: build: context: .. @@ -31,7 +49,7 @@ services: # OMS_PASSWORD: '93X37B]@k(svLmFM' OMS_TYPE: api OMS_SERVERNAME: mocha-oms - OMS_SERVERPORT: 4436 + OMS_SERVERPORT: 3012 # default is 4436; make sure they match! THEMES_PATH: /css/themes/{ThemeName}.css COMMON_THEMES_PATH: /css/common.css # # THEMES_PATH: /themes/{ThemeName}/theme.css @@ -53,18 +71,7 @@ services: - 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 serves the main HTTP(S) site which forwards to the mochaui-tenant nginx-proxy-tenant: depends_on: - static diff --git a/mocha-php b/mocha-php index 4da713a..b7b4248 160000 --- a/mocha-php +++ b/mocha-php @@ -1 +1 @@ -Subproject commit 4da713ae56ef2b2a41aa2783aa5b5e1bd301db5d +Subproject commit b7b424847fecd76f48d1f2331cfe1397ba569f70