flea/docker-compose.yml
ruberoid 35bb116bfd fix: Remove additional_contexts and revert Kaniko changes
- Removed additional_contexts from docker-compose.yml (not supported by Kaniko)
- Reverted Kaniko image from v1.23.2 back to :debug
- Removed --build-context flags (not supported)
- Added prepare-build.sh script to copy nuget.config before builds
2025-10-28 00:30:17 +04:00

172 lines
4.6 KiB
YAML

services:
nocr-telegram-client:
container_name: nocr-telegram-client
image: nocr-telegram-client:latest
build:
context: telegram-client
dockerfile: src/Nocr.TelegramClient.Host/Dockerfile
ports:
- 5050:8080
# IMPORTANT: Create .nocr.env file in project root with your secrets
# See .nocr.env.example for reference
env_file:
- .nocr.env
environment:
ASPNETCORE_ENVIRONMENT: DockerCompose
depends_on:
nocr-rabbitmq:
condition: service_healthy
nocr-telegram-listener:
condition: service_healthy
nocr-users:
condition: service_healthy
nocr-text-matcher:
condition: service_healthy
nocr-telegram-listener:
container_name: nocr-telegram-listener
image: nocr-telegram-listener:latest
build:
context: telegram-listener
dockerfile: src/Nocr.TelegramListener.Host/Dockerfile
ports:
- 5040:8080
# IMPORTANT: Create .nocr.env file in project root with your secrets
# See .nocr.env.example for reference
env_file:
- .nocr.env
environment:
ASPNETCORE_ENVIRONMENT: DockerCompose
session_pathname: '/app/WTelegram.session'
volumes:
- ./WTelegram.session:/app/WTelegram.session
depends_on:
nocr-rabbitmq:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
nocr-text-matcher:
container_name: nocr-text-matcher
image: nocr-text-matcher:latest
build:
context: text-matcher
dockerfile: src/Nocr.TextMatcher.Host/Dockerfile
ports:
- 5041:8080
# IMPORTANT: Create .nocr.env file in project root with your secrets
# See .nocr.env.example for reference
env_file:
- .nocr.env
environment:
ASPNETCORE_ENVIRONMENT: DockerCompose
depends_on:
nocr-rabbitmq:
condition: service_healthy
nocr-text-matcher-db:
condition: service_healthy
nocr-text-matcher-migrator:
condition: service_completed_successfully
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
nocr-text-matcher-migrator:
build:
context: text-matcher
dockerfile: src/Nocr.TextMatcher.Migrator/Dockerfile
image: nocr-text-matcher-migrations:latest
container_name: nocr-text-matcher-migrator
environment:
DOTNET_ENVIRONMENT: DockerCompose
depends_on:
nocr-text-matcher-db:
condition: service_healthy
nocr-users:
container_name: nocr-users
image: nocr-users:latest
build:
context: users
dockerfile: src/Nocr.Users.Host/Dockerfile
ports:
- 5042:8080
# IMPORTANT: Create .nocr.env file in project root with your secrets
# See .nocr.env.example for reference
env_file:
- .nocr.env
environment:
ASPNETCORE_ENVIRONMENT: DockerCompose
depends_on:
nocr-rabbitmq:
condition: service_healthy
nocr-users-migrator:
condition: service_completed_successfully
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
nocr-users-migrator:
build:
context: users
dockerfile: src/Nocr.Users.Migrator/Dockerfile
image: nocr-users-migrator:latest
container_name: nocr-users-migrator
environment:
DOTNET_ENVIRONMENT: DockerCompose
depends_on:
nocr-users-db:
condition: service_healthy
nocr-text-matcher-db:
container_name: nocr-text-matcher-db
image: mariadb:latest
restart: always
ports:
- 3316:3306
environment:
MARIADB_ROOT_PASSWORD: toor
MARIADB_DATABASE: nocr_text_matcher
healthcheck:
test: [ "CMD", "healthcheck.sh", "--connect", "--innodb_initialized" ]
interval: 5s
timeout: 10s
retries: 3
nocr-users-db:
container_name: nocr-users-db
image: mariadb:latest
restart: always
ports:
- 3326:3306
environment:
MARIADB_ROOT_PASSWORD: toor
MARIADB_DATABASE: nocr_users
healthcheck:
test: [ "CMD", "healthcheck.sh", "--connect", "--innodb_initialized" ]
interval: 5s
timeout: 10s
retries: 3
nocr-rabbitmq:
image: rabbitmq:3-management-alpine
container_name: nocr-rabbitmq
ports:
- 5672:5672
- 15672:15672
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: admin
healthcheck:
test: rabbitmq-diagnostics -q ping
interval: 5s
timeout: 10s
retries: 3