Django-Cookiecutter,docker-compose run:无法在终端中输入



我在使用 django cookiecutter 启动的项目时遇到了问题。

为了验证问题是否与我的项目无关,我正在一个空白的 django 千篇一律的项目上进行测试。

问题是当我运行时:

docker-compose -f production.yml run --rm django python manage.py createsuperuser

我收到提示,但无法在终端中输入。

当我运行时也是如此:

docker-compose -f production.yml run --rm django python manage.py shell

我收到外壳提示,但我无法键入。

该应用程序正在运行使用docker-machine create命令创建的DigitalOcean上的机器。

关于问题可能是什么以及如何调试它的任何想法?

要在 docker-compose 终端中启用键入,您需要指定终端会话在 docker-compose.yml 上是交互式的。因为默认情况下,docker 控制台不是交互式的。

stdin_open: true
tty: true  
可以使用

以下命令在 docker 容器内访问bash

docker-compose -f production.yml exec django bash

这将给你对 django 服务器容器的完全访问权限。在那里,你可以以完全的交互性运行所有正常的 django 命令。

创建超级用户

python manage.py createsuperuser

对于本地环境

docker-compose -f local.yml exec django bash

相关内容

最新更新