📜  通过命令行镜像 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 14:58:04.871000             🧑  作者: Mango

通过命令行镜像 - Shell-Bash

镜像(image)是一个包含程序运行所需的完整文件系统和运行时配置的单个文件。在容器化时代,镜像是非常重要的组成部分,而命令行镜像可以帮助开发者在不需要复杂的容器环境下快速运行程序。

Docker 镜像

Docker 是一个最流行的容器化平台,Docker 镜像也是最广泛使用的镜像之一。它使用 Dockerfile 来定义构建过程,并可以通过 Docker CLI 构建成一个镜像。以下是一个简单的 Dockerfile:

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt .

RUN pip install --no-cache-dir -r requirements.txt

COPY . .

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

以上的 Dockerfile 定义了一个基于 Python 3.9 slim 镜像构建的镜像,将当前目录的所有文件复制到容器中的 /app 目录,并安装在 requirements.txt 中所列出的所有 Python 依赖包。启动容器后,将以 python app.py 命令作为默认的启动命令。

通过执行以下命令构建和运行镜像:

docker build -t my-app .
docker run my-app
Podman 镜像

Podman 是另一个流行的容器化工具,与 Docker 不同,它不需要一个运行时守护进程,而可以直接从 shell 运行,这使得它更加适合命令行使用。以下是一个 Podman 镜像:

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt .

RUN pip install --no-cache-dir -r requirements.txt

COPY . .

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

同样,以上的 Dockerfile 定义了一个基于 Python 3.9 slim 镜像构建的镜像,将当前目录的所有文件复制到容器中的 /app 目录,并安装在 requirements.txt 中所列出的所有 Python 依赖包。在容器运行时,将以 python app.py 命令作为默认的启动命令。

通过执行以下命令构建和运行镜像:

podman build -t my-app .
podman run my-app
结论

命令行镜像可以帮助开发者在不需要复杂的容器环境下快速运行程序,尤其是适用于临时测试、代码调试等操作。通过选用合适的工具,在开发过程中可以更加高效地管理自己的代码和环境。