导入
应用程序容器化
学习为应用程序准备 GitOps 管理所需的步骤。
...
创建示例容器镜像的步骤
1# 基础镜像 2FROM python:3.8-slim-buster
1# 创建一个用于运行应用的用户 2RUN useradd -m educative-user 3 4# 将用户的主目录添加到环境变量 PATH 中 5ENV PATH="/home/educative-user/.local/bin:${PATH}" 6 7# 以新用户身份执行后续指令 8USER educative-user
1# 指定工作目录 2WORKDIR /app 3 4# 将本地目录中的文件复制到容器中 5COPY requirements.txt requirements.txt
1RUN pip3 install -q --user -r requirements.txt
1# 将文件系统中当前目录的内容复制到容器镜像的当前目录 2COPY . .
1# 启动应用并监听所有 IP 地址 2CMD [ "waitress-serve", "--port=5000", "--call", "app:create_app"]
1cd /usercode/system/app 2docker build -t python-sample:1.0 .
1docker images
Docker images 命令的输出结果
1REPOSITORY TAG IMAGE ID CREATED SIZE 2python-sample 1.0 cbbeb8474faa 6 seconds ago 122MB 3python 3.8-slim-buster 9e6f42318b17 11 days ago 117MB 4rancher/k3d-tools 5.0.0 ccd568d0f1bb 11 months ago 18.1MB 5rancher/k3d-proxy 5.0.0 3e784b1d4452 11 months ago 42.4MB 6rancher/k3s v1.21.5-k3s1 422fc97374f5 11 months ago 173MB
1docker run --publish 5000:5000 python-sample:1.0
1# 在新的终端窗口中执行(点击 + 按钮打开新终端) 2curl localhost:5000
注意: 发送请求到应用时,请使用新的交互式终端来执行
curl命令。
No configuration found for ID: 7fc0c408ce013a66ca2fb6ff8bc73e4cae16367e1cab930848c1b5142b952346