我有一个 docker-compose 堆栈一起运行多个图像。
一旦我有了 docker 堆栈,我就会运行一个本地堆栈和一个 mongo。在 Local-stack 中,如果要执行 lambda,则会启动一个新的 docker 映像。从 lambda 图像我需要连接到现有堆栈中的 mongo 图像。
docker.sock 访问权限已经提供给本地堆栈,因此它会在我的主机中创建一个新的 docker 映像。现在从 lambda 到 mongo 没有建立到网络的连接。既不是通过应用环回地址也不是通过 docker-compose.yml 中提到的网络别名
你能帮我如何建立连接...?
更新
我的 docker-compose.yml
version: '2'
services:
mongo:
image: mongo:3.5
networks:
apitests:
aliases:
- mongo
ports:
- "27017:27017"
localstack:
image: localstack/localstack
ports:
- "4567-4583:4567-4583"
- "4050:4050"
env_file:
- localstack-config.list
volumes:
- "/tmp/localstack:/tmp/localstack"
- "/var/run/docker.sock:/var/run/docker.sock"
networks:
apitests:
aliases:
- localaws
networks:
apitests: {}
我的 localstack-config.list
SERVICES=sqs,sns,lambda,s3
DEBUG=1
DEFAULT_REGION=eu-west-1
PORT_WEB_UI=4050
LAMBDA_EXECUTOR=docker
DOCKER_HOST=unix:///var/run/docker.sock
LAMBDA_REMOTE_DOCKER=false