version: '3'
services:
db:
image: postgres
web:
build: .
command: python3 manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
Run Code Online (Sandbox Code Playgroud)
为什么在运行时我不会丢失数据docker-compose build --force-em --no-cache。如果正常,为什么我们需要为数据文件夹创建卷?
运行命令时docker-compose build --force-em --no-cache,这只会从Dockerfile您所在的目录中构建Web Docker映像。
该命令不会停止您之前使用此撰写文件启动的容器,因此您希望在运行此命令时丢失任何数据。
但是,一旦您使用docker-compose down或停止了容器来删除容器docker-compose rm,则在重新启动容器时将找不到postgres数据。
如果您要保留数据,并在重新创建容器时使它拾取,则需要给postgres数据卷起一个这样的名称。
version: '3'
services:
db:
image: postgres
volumes:
- pgdata:/var/lib/postgresql/data
web:
build: .
command: python3 manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
Run Code Online (Sandbox Code Playgroud)
现在,重新创建容器时,postgres数据将不会丢失。
| 归档时间: |
|
| 查看次数: |
1911 次 |
| 最近记录: |