Initial commit

This commit is contained in:
2025-11-10 06:15:34 -05:00
parent b1172a3490
commit 4eccfe2ce8
19 changed files with 2309 additions and 0 deletions

102
docker-compose.yml Normal file
View File

@@ -0,0 +1,102 @@
version: '3.8'
services:
wxconnect:
build: .
container_name: wxconnect
restart: unless-stopped
environment:
# MQTT Configuration
MQTT_HOST: ikarus.egfh.internal
MQTT_PORT: 1883
MQTT_TOPIC: weather/loop
MQTT_CLIENT_ID: wxconnect-docker
# Database Configuration - Oracle on pve-ora19c-1
DB_TYPE: oracle
DB_HOST: pve-ora19c-1
DB_PORT: 1521
DB_NAME: shed.pattinson.org
DB_USERNAME: C##WEATHER
DB_PASSWORD: weather123
DB_SCHEMA: C##WEATHER
# Oracle specific
ORACLE_SID: shed.pattinson.org
# Logging
LOG_LEVEL: DEBUG
# Application Settings
RECONNECT_INTERVAL: 30
BATCH_SIZE: 1
BATCH_TIMEOUT: 60
volumes:
- ./logs:/app/logs
- ./src:/app/src
- ./.env:/app/.env:ro # Mount environment file if it exists
networks:
- wxconnect-network
# Remove dependency on local Oracle container since using external Oracle
# depends_on:
# - oracle-db
# Example Oracle database service (commented out - using external Oracle)
# oracle-db:
# image: gvenzl/oracle-xe:21-slim
# container_name: oracle-wxconnect
# restart: unless-stopped
# environment:
# ORACLE_PASSWORD: password
# APP_USER: weather
# APP_USER_PASSWORD: password
# ports:
# - "1521:1521"
# volumes:
# - oracle_data:/opt/oracle/oradata
# networks:
# - wxconnect-network
# Example PostgreSQL database service (alternative to Oracle)
# postgres-db:
# image: postgres:15
# container_name: postgres-wxconnect
# restart: unless-stopped
# environment:
# POSTGRES_DB: weather
# POSTGRES_USER: weather
# POSTGRES_PASSWORD: password
# ports:
# - "5432:5432"
# volumes:
# - postgres_data:/var/lib/postgresql/data
# networks:
# - wxconnect-network
# Example MS SQL Server database service (alternative)
# mssql-db:
# image: mcr.microsoft.com/mssql/server:2022-latest
# container_name: mssql-wxconnect
# restart: unless-stopped
# environment:
# SA_PASSWORD: "YourStrong@Passw0rd"
# ACCEPT_EULA: "Y"
# MSSQL_DB: weather
# ports:
# - "1433:1433"
# volumes:
# - mssql_data:/var/opt/mssql
# networks:
# - wxconnect-network
volumes:
oracle_data:
# postgres_data:
# mssql_data:
networks:
wxconnect-network:
driver: bridge