【问题标题】:"Deploy to cloud run" to existing miniconda enviroment using dockerfile使用 dockerfile “部署到云运行”到现有的 anaconda 环境
【发布时间】:2022-01-16 23:20:23
【问题描述】:

我在谷歌云上创建了一个服务器,并创建了一个 miniconda 环境来测试我的 API 并正常工作。但是做“部署到云运行”没有。有没有办法通过 dockerfile 在谷歌云上现有的 conda 环境中进行部署?如果是,请问在哪里可以找到教程或示例?

或者会是这样的:

FROM python:3.8


USER myuser #an existing user
WORKDIR /home/myuser

RUN conda activate venv # an existing miniconda environment

ENV PATH="/home/myuser/.local/bin:${PATH}"

COPY --chown=myuser:myuser . .

CMD ["python", "main.py"]

【问题讨论】:

  • 什么不起作用?你有错误吗?
  • Cloud Run 需要 Web 服务器来处理 HTTP 请求。您的 Dockerfile 正在启动一个 python 程序。该程序是否包含网络服务器?使用来自 Cloud Logging 的详细信息、main.py 和错误消息编辑您的问题。

标签: google-cloud-platform dockerfile miniconda


【解决方案1】:

某些 VM 中可能存在现有环境,但此容器中没有。 Dockerfile 可能还不够,但这可能需要 cloudbuild.yamlimage 需要安装 Python 3.8 和 miniconda。如果默认的 Python 3.8 映像不提供 miniconda,您必须先构建自定义映像 - 然后才能使用。我的意思是,可以使用 Dockerfile 构建自定义 Docker 映像,并使用 cloudbuild.yaml 云构建/运行它。为了在部署后运行命令(可能需要),容器需要知道它们。

此外,在容器内设置每个用户的环境通常很奇怪,
因为系统服务通常不太关心每个用户的环境。

【讨论】:

    猜你喜欢
    • 2020-04-02
    • 2019-04-20
    • 2022-06-15
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    • 2014-08-25
    • 1970-01-01
    • 2021-10-15
    相关资源
    最近更新 更多