【问题标题】:run python function as command line when django is runing under docker当 django 在 docker 下运行时,将 python 函数作为命令行运行
【发布时间】:2020-07-07 17:59:13
【问题描述】:

我正在处理一个 django docker 映像,我想使用命令行执行一个函数,我知道我可以进入 shell python docker 容器并运行这样的函数:

  • docker container ls 查找容器 id 并在下一条命令中使用
  • docker container exec -it <container_id> python3 manage.py shell 然后:
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>>
>>> from xx import foo 
>>> foo()  # foo() has been excecuted

但是,我想知道我是否可以使用类似 python 标志 -c 的东西来帮助运行一小段 python 代码作为这样的命令行:

  • python3 -c "from xx import foo; foo()"

我尝试使用 linux 管插入 cmd: echo 'from xx import foo; foo()' | docker container exec -it <container_id> python3 manage.py shell,但是不行。

非常感谢您的建议,感谢您的宝贵时间。

【问题讨论】:

标签: python django linux docker


【解决方案1】:

你可以这样做:

docker exec -it <container id> python3 manage.py shell --command="import foo;foo()"

更多信息可以在documentation找到。

【讨论】:

    猜你喜欢
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多