【发布时间】:2021-12-03 17:25:09
【问题描述】:
我正在使用 docker-compose,这是我的 docker-compose.yaml 文件:
version: "3.7"
services:
node:
container_name: my-app
image: my-app
build:
context: ./my-app-directoty
dockerfile: Dockerfile
command: npm run dev
environment:
MONGO_URL: my-database
port: 3000
volumes:
- ./my-app-directory/src:/app/src
- ./my-app-directory/node_modules:/app/node_modules
ports:
- "3000:3000"
networks:
- my-app-network
depends_on:
- my-database
my-database:
container_name: my-database
image: mongo
ports:
- "27017:27017"
networks:
- my-app-network
networks:
my-app-network:
driver: bridge
我希望每次运行以下命令时都能找到一个清晰且新创建的数据库:
docker-compose build
docker-compose up
但事实并非如此。当我使用docker-compose up 启动容器时,我的数据库具有上次使用docker-compose down 命令关闭它时的确切状态。而且由于我没有在my-database 对象中指定volume 道具,这是正常行为吗?这是否意味着不需要任何其他操作来持久化数据库状态?如果我选择使用docker-compose,我可以在生产中使用它吗?
【问题讨论】:
标签: docker docker-compose docker-volume