我目前正在尝试使用 M1 芯片将 Node 容器连接到 Mongo 容器。许多人说您无法在 M1 Mac 上运行 Mongo 4.9+,因为不支持 AVR。我不知道为什么,但在我的 M1 上 mongo 运行得很好。我可以使用 mongo://mongo:27017 通过 Mongo Compass 连接到容器。此外,如果我在 docker 之外运行 Node 应用程序,我可以使用相同的连接字符串连接到 Mongo 容器。但由于某种原因,我无法将容器化节点应用程序连接到容器化 Mongo 服务。
Dockerfile
FROM node:12
# Create app directory
WORKDIR /usr/src/app
# Copy dependencies
COPY package*.json ./
# Install dependencies
RUN npm install
RUN npm ci --only=production
# Bundle app source
COPY . .
EXPOSE 3000
CMD [ "node", "server.js" ]
Run Code Online (Sandbox Code Playgroud)
docker-compose.yml
version: "2"
services:
web:
build: .
ports:
- "3000:3000"
depends_on: …Run Code Online (Sandbox Code Playgroud)