cookiecutter-django 本地开发 docker

cookiecutter-django local development with docker

我从来没有在本地机器上使用 docker 进行开发,所以我有几个问题是在 documentation 中没有找到的。

  1. 设置后我不知道如何通过 pip 安装我的包。我试过: docker-compose -f local.yml run --rm django pip install some-package。它在某处安装了包,但不在项目中。每次添加新包都需要构建吗?

  2. 如何在另一个线程中 运行 django 管理命令 docker-compose -f local.yml run --rm django python manage.py mycommand停止runserver不方便的命令

  3. 我在哪里可以看到 celery 任务日志?如何运行: celery -A apps.taskapp worker -l info celery -A apps.taskapp beat -l INFO 查看我的任务的调试消息

我假设您使用 cookiecutter-django 模板开始您的项目。

  1. 第一次设置你 运行 docker-compose -f local.yml build。这将安装 local.txt 中定义的所有依赖项。如果您将任何自定义的 pip 包添加到 local.txtbase.txt,您将必须 re-build docker 图像 `docker-compose -f local.yml构建.

  2. 要运行 docker 容器中的任何命令,您需要: docker-compose -f local.yml run django [commands you would like to run]

注意:上面命令中的django是你的local.yml

中定义的名称服务

例如,要在 docker 中应用迁移: docker-compose -f local.yml run django python manage.py migrate

  1. 要启动所有服务 (django/postgres/celery/mailhog/etc),只需 运行: docker-compose -f local.yml up

您可以通过以下方式检查特定 运行ning docker 容器的日志: docker logs -f [name or id of container] 您可以通过以下方式找到: docker ps