services: pentestagent: build: context: . dockerfile: Dockerfile container_name: pentestagent environment: - OPENAI_API_KEY=${OPENAI_API_KEY} - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} - PENTESTAGENT_MODEL=${PENTESTAGENT_MODEL} - PENTESTAGENT_DEBUG=${PENTESTAGENT_DEBUG:-false} volumes: - ./loot:/app/loot networks: - pentestagent-net stdin_open: true tty: true pentestagent-kali: build: context: . dockerfile: Dockerfile.kali container_name: pentestagent-kali privileged: true # Required for VPN and some tools. NOTE: this is risky on shared hosts; prefer running inside a disposable VM. cap_add: - NET_ADMIN - SYS_ADMIN environment: - OPENAI_API_KEY=${OPENAI_API_KEY} - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} - PENTESTAGENT_MODEL=${PENTESTAGENT_MODEL} - ENABLE_TOR=${ENABLE_TOR:-false} - INIT_METASPLOIT=${INIT_METASPLOIT:-false} # By default msfrpcd binds to loopback; to intentionally expose Metasploit RPC to the host # set EXPOSE_MSF_RPC=true in your environment. This is NOT recommended on shared machines. - EXPOSE_MSF_RPC=${EXPOSE_MSF_RPC:-false} volumes: - ./loot:/app/loot networks: - pentestagent-net stdin_open: true tty: true profiles: - kali networks: pentestagent-net: driver: bridge