Deploy¶
vpcatlas runs the dashboard (vpcatlas serve) wherever a container or a Python process can run. The same image,
vpcatlas/vpcatlas on Docker Hub, serves the dashboard by default and runs any other command of the CLI when you give
it one. Lambda has its own image.
| Where | Guide | Manifests |
|---|---|---|
| Docker | deploy/docker.md | deploy/Dockerfile |
| Docker Compose | deploy/compose.md | deploy/docker-compose.yml |
| Amazon ECS (Fargate) | deploy/ecs.md | deploy/ecs/ |
| Kubernetes (EKS) | deploy/kubernetes.md | deploy/kubernetes/ |
| AWS Lambda | deploy/lambda.md | deploy/Dockerfile.lambda, deploy/lambda/ |
Common to all of them:
- The settings are
VPCATLAS_*environment variables, listed with their defaults in dashboard.md. - Credentials come from the standard AWS chain. On AWS use the task, pod, function or instance role; never put an
access key in a command line or an image. To audit other accounts set
VPCATLAS_ROLE_ARN(andVPCATLAS_EXTERNAL_ID). - The identity needs read-only permissions: iam.md and
deploy/iam/auditor-policy.json. - The dashboard shows your network topology. Keep it on a private network, or set
VPCATLAS_AUTH_PASSWORDand serve it over HTTPS. - To keep the history across restarts, or to share it between processes, set
VPCATLAS_SNAPSHOT_URI.