name: sockudo-benchmark
services:
sockudo-node:
build:
context: ./
dockerfile: ./test/multinode/Dockerfile.multinode
volumes:
- ./target:/app/target:ro
- ./config:/app/config:ro
environment:
- DEBUG=false
- PORT=6003
- HOST=0.0.0.0
- METRICS_ENABLED=true
- METRICS_PORT=9603
- SHUTDOWN_GRACE_PERIOD=0
- SOCKUDO_DEFAULT_APP_ID=app-id
- SOCKUDO_DEFAULT_APP_KEY=app-key
- SOCKUDO_DEFAULT_APP_SECRET=app-secret
- SOCKUDO_ENABLE_CLIENT_MESSAGES=true
- SOCKUDO_DEFAULT_APP_MAX_CLIENT_EVENTS_PER_SECOND=10000
- SOCKUDO_DEFAULT_APP_MAX_CONNECTIONS=100000
- ADAPTER_BUFFER_MULTIPLIER_PER_CPU=128
ports:
- "6003:6003"
- "9603:9603"
networks:
- sockudo-benchmark-test
command: ${SOCKUDO_COMMAND:-/app/target/debug/sockudo}
deploy:
resources:
limits:
cpus: '2.0' memory: 2G reservations:
cpus: '2.0' memory: 2G
ulimits:
nofile:
soft: 131072 hard: 131072
nproc:
soft: 65536 hard: 65536
security_opt:
- no-new-privileges:true
privileged: false
cap_add:
- NET_ADMIN - SYS_RESOURCE
networks:
sockudo-benchmark-test:
driver: bridge
driver_opts:
com.docker.network.bridge.name: sockudo0
com.docker.network.driver.mtu: 1500
com.docker.network.bridge.enable_ip_masquerade: "true"
com.docker.network.bridge.enable_icc: "true"
com.docker.network.bridge.host_binding_ipv4: "0.0.0.0"