我想在我的笔记本电脑(办公电脑)和PC(家庭电脑)(都是Windows)上本地开发带有docker app的Django-cookiecutter。当我在两者之间来回移动时(我将项目保存到USB密钥),我希望Postgres数据库能够传输。我相信我需要绑定安装它,但是在成功完成此过程中遇到了麻烦。我显然不是专业的程序员,因此,我非常感谢您的耐心和回复。还要注意,两台计算机上的文件路径实际上是相同的,因为两者的用户名相同。我不确定这是否有帮助。
我尝试从以下位置更改local.yml中的音量:
local_postgres_data:/var/lib/postgresql/data
收件人:
./local_postgres_data:/var/lib/postgresql/data
但是因为我在Windows上,所以无法正常工作。我也尝试过在docker cli中创建postgres容器,但是无法在我的项目目录中使该卷指向我想要的位置。我在uDemy上学习了docker课程,学到了很多东西,但是仍然无法正常工作。
docker-compose local.yml文件:
version: '3'
volumes:
local_postgres_data:
external: true
local_postgres_data_backups: {}
services:
django:
build:
context: .
dockerfile: ./compose/local/django/Dockerfile
image: projname_local_django
depends_on:
- postgres
volumes:
- .:/a
env_file:
- ./.envs/.local/.django
- ./.envs/.local/.postgres
ports:
- "8000:8000"
command: /start
postgres:
build:
context: .
dockerfile: ./compose/production/postgres/Dockerfile
image: projname_production_postgres
volumes:
- local_postgres_data:/var/lib/postgresql/data
- local_postgres_data_backups:/backups
env_file:
- ./.envs/.local/.postgres
node:
build:
context: .
dockerfile: ./compose/local/node/Dockerfile
image: projname_local_node
depends_on:
- django
volumes:
- .:/app
# http://jdlm.info/articles/2016/03/06/lessons-building-node-app-docker.html
- /app/node_modules
command: npm run dev
ports:
- "3000:3000"
# Expose browsersync UI: https://www.browsersync.io/docs/options/#option-ui
- "3001:3001"
我想我应该期望在我的主要django项目文件夹的local_postgres_data文件夹中看到某些东西,但是在那里什么也看不到。
我如何将我的postgres数据库保存到一台计算机上的项目文件夹中,然后将其加载到另一台计算机上,以重新开始我的工作?
提前谢谢!