Update docker compose file for new architechure

This commit is contained in:
2026-01-29 13:02:24 +02:00
parent 9e19dc0fa4
commit b69fd92b19
2 changed files with 81 additions and 52 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@@ -1,7 +1,8 @@
#============== MIH Network ==================================================================== #============== MIH Network ====================================================================
networks: networks:
MIH_Network: mih-network:
driver: bridge driver: bridge
#============== MIH Containers ====================================================================
services: services:
#============== Nginx Proxy Server Old ==================================================================== #============== Nginx Proxy Server Old ====================================================================
# nginx: # nginx:
@@ -16,9 +17,9 @@ services:
# - certbotConf:/etc/letsencrypt # - certbotConf:/etc/letsencrypt
# - certbotChall:/var/www/certbot # - certbotChall:/var/www/certbot
# depends_on: # depends_on:
# - MIH_UX # - mih-ux
# networks: # networks:
# - MIH_Network # - mih-network
# profiles: [ 'prod' ] # profiles: [ 'prod' ]
#============== Cert Bot Old ==================================================================== #============== Cert Bot Old ====================================================================
# certbot: # certbot:
@@ -30,13 +31,13 @@ services:
# #command: certonly --test-cert --webroot -w /var/www/certbot --force-renewal --email yasienmeth@gmail.com -d mzansi-innovation-hub.co.za -d www.mzansi-innovation-hub.co.za --agree-tos # #command: certonly --test-cert --webroot -w /var/www/certbot --force-renewal --email yasienmeth@gmail.com -d mzansi-innovation-hub.co.za -d www.mzansi-innovation-hub.co.za --agree-tos
# command: certonly --webroot -w /var/www/certbot --force-renewal --email ${CERTBOT_EMAIL} -d ${CERTBOT_APP_DOMAIN} -d ${CERTBOT_API_DOMAIN} -d ${CERTBOT_STORAGE_DOMAIN} -d ${CERTBOT_MONITOR_DOMAIN} -d ${CERTBOT_AI_DOMAIN} --agree-tos # command: certonly --webroot -w /var/www/certbot --force-renewal --email ${CERTBOT_EMAIL} -d ${CERTBOT_APP_DOMAIN} -d ${CERTBOT_API_DOMAIN} -d ${CERTBOT_STORAGE_DOMAIN} -d ${CERTBOT_MONITOR_DOMAIN} -d ${CERTBOT_AI_DOMAIN} --agree-tos
# networks: # networks:
# - MIH_Network # - mih-network
# depends_on: # depends_on:
# - nginx # - nginx
# profiles: [ 'withCert' ] # profiles: [ 'withCert' ]
#============== Nginx Proxy Manager ==================================================================== #============== Nginx Proxy Manager ====================================================================
MIH_NGINX: mih-nginx:
container_name: MIH_NGINX container_name: mih-nginx
image: 'jc21/nginx-proxy-manager:latest' image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped restart: unless-stopped
ports: ports:
@@ -47,22 +48,22 @@ services:
- ./mih_nginx/data:/data - ./mih_nginx/data:/data
- ./mih_nginx/letsencrypt:/etc/letsencrypt - ./mih_nginx/letsencrypt:/etc/letsencrypt
networks: networks:
- MIH_Network - mih-network
#============== GITEA ==================================================================== #============== GITEA ====================================================================
MIH_GITEA: mih-gitea:
image: gitea/gitea:latest image: gitea/gitea:latest
container_name: MIH_GITEA container_name: mih-gitea
environment: environment:
- USER_UID=1000 - USER_UID=1000
- USER_GID=1000 - USER_GID=1000
- GITEA__database__DB_TYPE=mysql - GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=MIH-GITEA-DB:3306 - GITEA__database__HOST=mih-gitea-db:3306
- GITEA__database__NAME=gitea - GITEA__database__NAME=${GITEA_SQL_DB}
- GITEA__database__USER=gitea - GITEA__database__USER=${GITEA_SQL_USER}
- GITEA__database__PASSWD=gitea_password - GITEA__database__PASSWD=${GITEA_SQL_PW}
restart: always restart: always
networks: networks:
- MIH_Network - mih-network
volumes: volumes:
- ./mih_git/gitea:/data - ./mih_git/gitea:/data
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
@@ -71,19 +72,19 @@ services:
- "3000:3000" - "3000:3000"
- "222:22" - "222:22"
depends_on: depends_on:
MIH-GITEA-DB: mih-gitea-db:
condition: service_healthy condition: service_healthy
MIH_GITEA_DB: mih-gitea-db:
image: mysql:8.0 image: mysql:8.0
container_name: MIH_GITEA_DB container_name: mih-gitea-db
restart: always restart: always
environment: environment:
- MYSQL_ROOT_PASSWORD=gitea_root_password - MYSQL_ROOT_PASSWORD=${GITEA_SQL_ROOT_PW}
- MYSQL_USER=gitea - MYSQL_USER=${GITEA_SQL_USER}
- MYSQL_PASSWORD=gitea_password - MYSQL_PASSWORD=${GITEA_SQL_PW}
- MYSQL_DATABASE=gitea - MYSQL_DATABASE=${GITEA_SQL_DB}
networks: networks:
- MIH_Network - mih-network
volumes: volumes:
- ./mih_git/mysql:/var/lib/mysql - ./mih_git/mysql:/var/lib/mysql
healthcheck: healthcheck:
@@ -92,12 +93,11 @@ services:
timeout: 5s timeout: 5s
retries: 5 retries: 5
#============== Super Token Auth ==================================================================== #============== Super Token Auth ====================================================================
MIH_SuperTokens: mih-supertokens:
container_name: MIH_SuperTokens container_name: mih-supertokens
image: supertokens/supertokens-mysql:latest image: supertokens/supertokens-mysql:latest
# image: registry.supertokens.io/supertokens/supertokens-mysql
depends_on: depends_on:
- MIH_DB - mih-db
ports: ports:
- 3567:3567 - 3567:3567
environment: environment:
@@ -106,12 +106,12 @@ services:
PASSWORD_RESET_TOKEN_LIFETIME: '7200000' PASSWORD_RESET_TOKEN_LIFETIME: '7200000'
MYSQL_USER: ${SQL_USER} MYSQL_USER: ${SQL_USER}
MYSQL_PASSWORD: ${SQL_USER_PW} MYSQL_PASSWORD: ${SQL_USER_PW}
MYSQL_HOST: MIH_DB MYSQL_HOST: mih-db
MYSQL_PORT: 3306 MYSQL_PORT: 3306
MYSQL_DATABASE_NAME: ${SUPERTOKENS_DB} MYSQL_DATABASE_NAME: ${SUPERTOKENS_DB}
API_KEYS: ${SUPERTOKENS_API_KEY} API_KEYS: ${SUPERTOKENS_API_KEY}
networks: networks:
- MIH_Network - mih-network
restart: unless-stopped restart: unless-stopped
healthcheck: healthcheck:
test: > test: >
@@ -119,36 +119,65 @@ services:
interval: 10s interval: 10s
timeout: 5s timeout: 5s
retries: 5 retries: 5
#============== MIH WordPress ====================================================================
mih-wordpress:
container_name: mih-wordpress
image: wordpress
restart: always
ports:
- 8081:80
environment:
WORDPRESS_DB_HOST: mih-wp-db
WORDPRESS_DB_USER: ${WP_SQL_USER}
WORDPRESS_DB_PASSWORD: ${WP_SQL_USER_PW}
WORDPRESS_DB_NAME: ${WP_SQL_DB}
volumes:
- ./mih_wp/ui:/var/www/html
networks:
- mih-network
mih-wp-db:
container_name: mih-wp-db
image: mariadb:10.11
restart: always
environment:
MARIADB_DATABASE: ${WP_SQL_DB}
MARIADB_USER: ${WP_SQL_USER}
MARIADB_PASSWORD: ${WP_SQL_USER_PW}
MARIADB_RANDOM_ROOT_PASSWORD: '1'
volumes:
- ./mih_wp/database:/var/lib/mysql
networks:
- mih-network
#============== MIH-UX Flutter ==================================================================== #============== MIH-UX Flutter ====================================================================
MIH_UX: mih-ux:
container_name: MIH_UX container_name: mih-ux
build: build:
context: ./mih_ui context: ./mih_ui
ports: ports:
- "83:83" - "83:83"
networks: networks:
- MIH_Network - mih-network
depends_on: depends_on:
- MIH_API_Hub - mih-api-hub
#============== API Hub ==================================================================== #============== API Hub ====================================================================
MIH_API_Hub: mih-api-hub:
build: build:
context: ./mih_api_hub context: ./mih_api_hub
target: builder target: builder
container_name: MIH_API_Hub container_name: mih-api-hub
ports: ports:
- 8080:80 - 8080:80
volumes: volumes:
- ./mih_api_hub:/app - ./mih_api_hub:/app
networks: networks:
- MIH_Network - mih-network
depends_on: depends_on:
- MIH_DB - mih-db
#============== My SQL DB ==================================================================== #============== My SQL DB ====================================================================
MIH_DB: mih-db:
platform: linux/amd64 platform: linux/amd64
image: mysql:5.7 image: mysql:5.7
container_name: MIH_DB container_name: mih-db
restart: always restart: always
environment: environment:
MYSQL_ROOT_PASSWORD: ${SQL_ROOT_PW} MYSQL_ROOT_PASSWORD: ${SQL_ROOT_PW}
@@ -156,7 +185,7 @@ services:
MYSQL_PASSWORD: ${SQL_USER_PW} MYSQL_PASSWORD: ${SQL_USER_PW}
MYSQL_DATABASE: ${SUPERTOKENS_DB} MYSQL_DATABASE: ${SUPERTOKENS_DB}
networks: networks:
- MIH_Network - mih-network
ports: ports:
- '3306:3306' - '3306:3306'
volumes: volumes:
@@ -167,21 +196,21 @@ services:
# image: phpmyadmin/phpmyadmin # image: phpmyadmin/phpmyadmin
# container_name: MIH-phpmyadmin # container_name: MIH-phpmyadmin
# environment: # environment:
# PMA_HOST: MIH_DB # PMA_HOST: mih-db
# PMA_PORT: 3306 # PMA_PORT: 3306
# PMA_ARBITRARY: # PMA_ARBITRARY:
# networks: # networks:
# - MIH_Network # - mih-network
# restart: always # restart: always
# ports: # ports:
# - 8081:80 # - 8081:80
# depends_on: # depends_on:
# - MIH_DB # - mih-db
#============== Minio File Storage ==================================================================== #============== Minio File Storage ====================================================================
MIH_Minio: mih-minio:
platform: linux/amd64 platform: linux/amd64
container_name: MIH_Minio container_name: mih-minio
hostname: MIH_Minio hostname: mih-minio
image: minio/minio image: minio/minio
ports: ports:
- '9000:9000' - '9000:9000'
@@ -192,11 +221,11 @@ services:
MINIO_ROOT_USER: ${MINIO_ROOT_USER} MINIO_ROOT_USER: ${MINIO_ROOT_USER}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PW} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PW}
networks: networks:
- MIH_Network - mih-network
command: ["server", "/data", "--console-address", ":9001"] command: ["server", "/data", "--console-address", ":9001"]
#============== MIH-Monitor Portainer ==================================================================== #============== MIH-Monitor Portainer ====================================================================
MIH_Monitor: mih-monitor:
container_name: MIH_Monitor container_name: mih-monitor
image: portainer/portainer-ce:2.20.3 image: portainer/portainer-ce:2.20.3
ports: ports:
- 9444:9443 - 9444:9443
@@ -205,10 +234,10 @@ services:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped restart: unless-stopped
networks: networks:
- MIH_Network - mih-network
#============== MIH-AI Ollama ==================================================================== #============== MIH-AI Ollama ====================================================================
MIH_AI: mih-ai:
container_name: MIH_AI container_name: mih-ai
image: ollama/ollama:latest image: ollama/ollama:latest
ports: ports:
- 11434:11434 - 11434:11434
@@ -222,7 +251,7 @@ services:
- OLLAMA_KEEP_ALIVE=24h - OLLAMA_KEEP_ALIVE=24h
- OLLAMA_HOST=0.0.0.0 - OLLAMA_HOST=0.0.0.0
networks: networks:
- MIH_Network - mih-network
# === Added section for NVIDIA GPU acceleration === # === Added section for NVIDIA GPU acceleration ===
# runtime: nvidia # runtime: nvidia
# deploy: # deploy: