如何在 docker 容器上安装 python

我创建了一个 docker-compose yml 文件来在 docker 容器中运行 cron-job 。


将在 docker 容器内运行的 cron-job 必须运行python脚本并通过 redis-sentinel 连接到mysql和redis。


Cron-job 需要在 docker 容器中安装python 和 python 依赖项(mysql 和 redis sentinel)才能成功运行 python 脚本。


这是我的 docker-compose yml 文件


version: '3'

services:

  cron-job:

    image: alpine:3.10

    command: crond -f -d 8

    volumes:

      - /Users/anshul/cron:/etc/crontabs/root:z

    restart: unless-stopped

networks:

  default:

    external:

      name: cnet

我需要在这里做哪些更改才能在 docker 容器上安装 python 和所需的依赖项,这些依赖项将在运行此 compose 文件后出现。


炎炎设计
浏览 180回答 1
1回答

RISEBY

创建泊坞窗文件DockerfileFROM python:3WORKDIR /usr/src/appCOPY requirements.txt ./RUN pip install --no-cache-dir -r requirements.txt在此示例中,您将需求存储在requirements.txt文件中。您可以使用命令构建的需求文件pip freeze > requirements.txt(如果您使用虚拟环境,则很有用)或者FROM python:3WORKDIR /usr/src/appCOPY requirements.txt ./RUN pip install --no-cache-dir {mysql package name} {redis package name}然后您可以将其推送到 docker hub 注册表中,或者直接从 docker-compose 构建并使用它构建您的映像并与 docker compose 一起使用第一种方式您可以构建并将其推送到 docker hub(在这里您可以找到更多信息: https: //docs.docker.com/get-started/part3/)那么你的 docker compose 将是这样的:docker-compose.yamlversion: '3'services:  cron-job:    image: dockerhub-login/your-image-name:tag    ...第二种方式您可以在 docker-compose 中使用 Dockerfile:docker-compose.yamlversion: '3'services:  cron-job:    build: path/to/Dockerfile    ...如果Dockerfile和docker-compose.yaml在同一目录中,那么您可以使用build: .
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python