跳到主要内容

2.3-Dockerfile

Create by fall on 26 Jan 2025 Recently revised in 01 Mar 2023

Dockerfile

Dockerfile 中最常用命令

# syntax=docker/dockerfile:1
# 首行表示文件定义,可以忽略,该命令表示 docker build 时,始终使用版本 1 语法的最新版本
# 定义一个基本的镜像,之后的所有指令都在该 image 上运行
FROM ubuntu:22.04

# 可以在一个新 ubuntu:22.04 环境内执行任何命令
# 执行命令,更新 apt-get 并且安装 python 所需环境
RUN apt-get update && apt-get install -y python3 python3-pip
RUN pip install flask==3.0.*

# 从本地上下文中复制文件到容器内的 / 路径
COPY hello.py /

# 设置环境变量
ENV FLASK_APP=hello

# 暴露端口,表明有一个服务在 8000 端口上监听
EXPOSE 8000

# 最终,当用户通过该 image 创建一个容器时,运行该内容
CMD ["flask", "run", "--host", "0.0.0.0", "--port", "8000"]
# 命令有两种类型,exec form,shell form,上面的命令时 exec 类型
# shell form
# CMD flask run --host 0.0.0.0 --port 8000