1 回答
TA贡献1752条经验 获得超4个赞
docker-compose 可以让你同时完成。
你可以有一个 Flask 容器来运行你的 Flask 应用程序,然后是一个 mongo 容器,其中安装了一个卷作为你的数据目录,因此有一个用于单元测试的开发卷挂载,以及你 CI 中其他地方的实际生产卷挂载/CD 管道。
compose也使容器之间更容易交谈。例如:
version: "3"
services:
flask:
build: .
image: flask-container
depends_on:
- mongodb
environment:
- 'MONGO_HOST=mongodb'
- 'MONGO_PORT=27017'
volumes:
- ./conf/dev:/conf
mongodb:
image: mongo:latest
container_name: "mongodb"
environment:
- MONGO_DATA_DIR=/data/db
- MONGO_LOG_DIR=/dev/null
volumes:
- ~/unit-tests/data/db:/data/db
ports:
- 27017:27017
command: mongod --smallfiles --logpath=/dev/null # --quiet
networks:
default:
external:
name: cicd
然后他们在同一个网络上,Flask 可以直接调用mongodb:27017而不是 ip 地址
添加回答
举报