4

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

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

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

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

4

1 回答 1

12

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

  1. 第一次设置你运行docker-compose -f local.yml build。这将安装local.txt. 如果您将任何自定义的 pip 包添加到local.txtbase.txt,您将不得不重新构建 docker 镜像 `docker-compose -f local.yml build。

  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

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

于 2018-03-21T01:19:01.153 回答