44 lines
1.1 KiB
YAML
44 lines
1.1 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
# Tor Service - Runs Tor with Strict Validation
|
|
tor:
|
|
build: .
|
|
image: docker-tor-hidden-service:latest
|
|
container_name: tor-service
|
|
restart: unless-stopped
|
|
environment:
|
|
# Format: ExternalPort:ContainerName:InternalPort
|
|
# Pointing to the new 'web' service below
|
|
- HIDDEN_SERVICE_HOSTS=80:web:80
|
|
- TOR_CONTROL_PASSWORD=secure_password
|
|
ports:
|
|
- "9051:9051" # Expose control port
|
|
volumes:
|
|
- tor-data:/var/lib/tor/
|
|
depends_on:
|
|
- web
|
|
|
|
# Demo Web Service (So Tor has something to host)
|
|
web:
|
|
image: nginx:alpine
|
|
container_name: my-website
|
|
restart: unless-stopped
|
|
|
|
# Vanguards Service - Runs Vanguards only (Sidecar)
|
|
vanguards:
|
|
build: .
|
|
image: docker-tor-hidden-service:latest
|
|
container_name: vanguards-sidecar
|
|
restart: unless-stopped
|
|
command: vanguards --control_ip tor-service --control_port 9051 --control_pass secure_password
|
|
environment:
|
|
# Placeholder to ensure no tor starts here
|
|
- HIDDEN_SERVICE_HOSTS=""
|
|
depends_on:
|
|
- tor
|
|
volumes:
|
|
- tor-data:/var/lib/tor/
|
|
|
|
volumes:
|
|
tor-data:
|