@
dylanninin 谢谢指出!我确实是刚学 Docker 不久,昨晚根据大家的回答我重新看了一遍 Docker 的 volumes 文档,目前问题基本解决了。虽然不确定是不是好的解决方案。目前 docker-compose.yml 是这样的:
version: '2'
services:
django:
build:
context: .
dockerfile: ./compose/django/Dockerfile
command: /
gunicorn.sh volumes:
- static-file:/app/static
- sqlite3-db:/app/database
nginx:
build: ./compose/nginx
depends_on:
- django
volumes:
- static-file:/home/app/static
ports:
- "0.0.0.0:80:80"
volumes:
static-file: {}
sqlite3-db: {}
我把静态文件和数据库文件均放到一个数据卷容器里,让 django 和 nginx 共享,这样 nginx 可以代理静态文件了,从新构建容器启动容器数据库也还在了。不知道这样的解决方案是否合理?