利用Podman构建基于Fission env/builder的镜像

镜像准备

构建Dockerfile

fission的基础环境包括两种:env 以及 builder。如果仅基于code构建function(i.e., 只创建deployachive),仅构建env即可;但如果需要构建sourcearchive,则需要同时创建env和builder。其中,builder基于fission-python-builder,env基于fission-python-env。

env

bash 复制代码
FROM fission/python-env-3.9 #注意这里

RUN apk --no-cache add \
    zlib-dev \
    libjpeg-turbo-dev \
    build-base

RUN pip install --upgrade pip  #必须要添加,否则会出错
RUN pip install Pillow

EXPOSE 8001

builder

bash 复制代码
FROM fission/python-builder-3.9  #注意这里

RUN apk --no-cache add \
    zlib-dev \
    libjpeg-turbo-dev \
    build-base

RUN pip install --upgrade pip
RUN pip install Pillow

EXPOSE 8001

build镜像

  1. 切换到root用户
  2. 执行以下命令完成build
bash 复制代码
podman build -t $image_name:$image_tag -f $dockerfile_path

上传镜像

  1. 登录docker hub (保证在root用户下)
bash 复制代码
podman login
  1. 查看image ID
bash 复制代码
podman image list
  1. 上传镜像
bash 复制代码
podman push $imageid $docker_hub_name/image_name:image_tag

镜像使用

创建使用上述镜像的env

bash 复制代码
fission env create --name pillow --image $name/pillow-env:v1  --builder $name/pillow-builder:v1 

创建函数

bash 复制代码
zip -jr ./thumb_src.zip ./* #打包function的源文件
fission package create  --name thumb-pkg --sourcearchive thumb_src.zip --env pillow
fission fn create  --name thumb --pkg thumb-pkg --entrypoint "thumbnail.main" --env pillow --executortype  newdeploy #指定函数入口

测试函数

bash 复制代码
fission fn test --name thumb
相关推荐
sbjdhjd3 天前
02 下 | Kubernetes Pod 实战实验完全解析
linux·运维·云原生·kubernetes·podman·kubelet·kubeless
饭后一颗花生米3 天前
2026年,Docker已死?Containerd、Podman与Nix的容器新战争
docker·容器·podman
cgsthtm6 天前
rocky linux 8.10 下的 podman 配置镜像加速
docker·podman·镜像加速·podman-docker·毫秒镜像
sbjdhjd7 天前
02 (中)| K8s Pod 生产化落地:从配置到优化全流程
linux·运维·云原生·kubernetes·开源·podman·kubelet
sbjdhjd8 天前
02(上)| K8s 资源管理全流程:命令、配置、生产避坑
linux·运维·云原生·kubernetes·云计算·podman·kubelet
吉星9527ABC13 天前
CentOS9stream上使用podman代替docker
docker·容器·podman
XDPOD204817 天前
用了TikTok ShopPOD定制系统软件,真实口碑究竟咋样?
podman
love530love24 天前
Windows Podman Machine 虚拟硬盘迁移完整指南:从 C 盘到非系统盘
c语言·人工智能·windows·podman
love530love24 天前
Podman Machine 虚拟硬盘迁移实战二:用 Junction 把 vhdx 从 C 盘搬到其他盘
c语言·开发语言·人工智能·windows·wsl·podman·podman machine
挪不动2 个月前
podman使用记录 - Windows篇
podman