Docker部署nodejs+ mongodb应用
一个nodejs+mongodb应用的应用。本地使用docker可以跑起来,但是使用DaoCloud部署应用的时候失败,查看了日志,是连接数据库的时候出现了问题.
nodejs连接mongodb
mongoose.connect('mongodb://mongo/dashboard', {
useMongoClient: true
})
mongoose.Promise = global.Promise
Dockerfile
FROM node
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install --registry=https://registry.npm.taobao.org
COPY . .
CMD [ "npm", "start" ]
docker-compose.yml
version: '3'
services:
app:
build: app
volumes:
- ./app:/usr/src/app
- /usr/src/app/node_modules
ports:
- "3000:3000"
depends_on:
- mongo
mongo:
image: mongo
ports:
- "19999:27017"
restart: always
adminmongo:
image: "mrvautin/adminmongo"
ports:
- "1234:1234"
因为本地开启了mongodb的服务,27017端口被占用,所以修改了端口, 本地测试的时候,一切功能正常。Robomongo也能连接到mongodb, 能看到数据。
错误提示:
MongoError: failed to connect to server [mongo:27017] on first connect [MongoError: getaddrinfo ENOTFOUND mongo mongo:27017]
但是部署到线上如何处理数据库, 请大佬指点
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论