Files
tor-guard-relay/templates/cosmos-compose-exit.json
rE-Bo0t.bx1 a28ce0a4e6 feat: add gen-auth tool and refactor compose templates
Major refactor of Docker Compose configurations and tooling enhancements.

-  Add `gen-auth` script for generating Tor Control Port credentials
- 🐳 Refactor Docker Compose templates:
  - Add native healthcheck configurations to all relay/bridge files
  - Standardize security capabilities (drop ALL, add SETUID/SETGID)
  - Remove verbose comments to streamline template usage
  - Update volume definitions for better data persistence
- 🔧 Update base dependencies:
  - Alpine Linux -> 3.23.0
  - Golang -> 1.25.5-alpine
- 🧹 Standardize ENV variable names across all configurations
2025-12-05 04:37:19 +08:00

69 lines
1.9 KiB
JSON

{
"minVersion": "0.16.0",
"services": {
"tor-exit-relay": {
"image": "r3bo0tbx1/onion-relay:latest",
"container_name": "tor-exit-relay",
"restart": "unless-stopped",
"network_mode": "host",
"environment": [
"TOR_RELAY_MODE=exit",
"TOR_NICKNAME=MyExitRelay",
"TOR_CONTACT_INFO=admin@example.com <0xYOUR_PGP_KEY>",
"TOR_ORPORT=9001",
"TOR_DIRPORT=9030",
"TOR_BANDWIDTH_RATE=50 MBytes",
"TOR_BANDWIDTH_BURST=100 MBytes",
"TOR_EXIT_POLICY=accept *:80,accept *:443,reject *:*"
],
"volumes": [
{
"type": "volume",
"source": "tor-exit-data",
"target": "/var/lib/tor"
},
{
"type": "volume",
"source": "tor-exit-logs",
"target": "/var/log/tor"
}
],
"security_opt": [
"no-new-privileges:true"
],
"cap_drop": [
"ALL"
],
"cap_add": [
"NET_BIND_SERVICE",
"CHOWN",
"SETUID",
"SETGID",
"DAC_OVERRIDE"
],
"healthcheck": {
"test": [
"CMD-SHELL",
"/usr/local/bin/healthcheck.sh"
],
"interval": "10m",
"timeout": "15s",
"start_period": "30s",
"retries": 3
},
"labels": {
"cosmos-stack": "TorExitRelay",
"cosmos-stack-main": "tor-exit-relay",
"cosmos-description": "⚠️ Tor Exit Relay v1.1.3 - Reduced exit policy (HTTP/HTTPS only) | ENV-based config | Weekly security updates",
"cosmos-icon": "https://raw.githubusercontent.com/r3bo0tbx1/tor-guard-relay/refs/heads/main/src/exit.png",
"cosmos-auto-update": "true",
"cosmos-force-network-secured": "false",
"cosmos-version": "1.1.3"
}
}
},
"volumes": {
"tor-exit-data": {},
"tor-exit-logs": {}
}
}