【发布时间】:2022-01-13 15:58:41
【问题描述】:
我正在使用 nginx 来提供我的一些文档。我有一个 python 脚本可以为我处理这些文档。我不想预处理文档,然后在构建 docker 容器之前添加它们,因为这些文档可能会变得非常大并且数量会增加。我想要的是在 nginx 容器中运行我的 python(和 bash)脚本,并让 nginx 只为这些文档提供服务。有没有办法在构建容器之前不对文档进行预处理?
我尝试执行RUN python3 process_docs.py,但我一直看到以下错误:
/bin/sh: 1: python: not found
The command '/bin/sh -c python process_docs.py' returned a non-zero code: 127
有没有办法让 python3 进入 Nginx docker 容器?我正在考虑使用以下方法安装 python3:
apt-get update -y
apt-get install python3.6 -y
但我不确定这是否是一种好习惯。请告诉我运行我的预处理脚本的最佳方式。
【问题讨论】:
-
要正确回答我们需要知道这些容器在哪里运行? Docker compose、swarm、kubernetes,还有别的吗?容器编排器很可能提供了一个既定的模式来做到这一点。
-
构建使用
docker build -t docs:v1 .运行使用:docker run -d --name=docs-web -p 3009:80 docs:v1