melange+ apko 基于的alpine docker 镜像集成玩法
主要是一个集成,同时可以提供方便的alpine apk 包管理以及维护
参考集成
备注:以上中使用git 进行配置管理,使用melange 进行apk 包的构建,同时可以结合s3 将数据存储到s3中,如果构建基于alpine 镜像的可以直接使用构建的私服,同时
也可以结合apko 进行oci 镜像构建,也比较高效方便
参考使用
- apk 构建 yaml 定义
package:
name: hello
version: 2.12
description: "the GNU hello world program"
copyright:
- paths:
- "*"
attestation: |
Copyright 1992, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2005,
2006, 2007, 2008, 2010, 2011, 2013, 2014, 2022 Free Software Foundation,
Inc.
license: GPL-3.0-or-later
dependencies:
runtime:
environment:
contents:
repositories:
- https://mirrors.aliyun.com/alpine/edge/main
packages:
- alpine-baselayout-data
- busybox
- build-base
- scanelf
- ssl_client
- ca-certificates-bundle
pipeline:
- uses: fetch
with:
uri: https://ftp.gnu.org/gnu/hello/hello-${{package.version}}.tar.gz
expected-sha256: cf04af86dc085268c5f4470fbae49b18afbc221b78096aab842d934a76bad0ab
- uses: autoconf/configure
- uses: autoconf/make
- uses: autoconf/make-install
- uses: strip
- apko yaml 定义
contents:
repositories:
- https://mirrors.aliyun.com/alpine/edge/main
- /work/packages
packages:
- alpine-base
- curl
- tree
- tzdata
- hello
entrypoint:
command: /bin/sh -l
paths:
- path: /etc/localtime
type: symlink
source: /usr/share/zoneinfo/Asia/Shanghai
# optional environment configuration
environment:
PATH: /usr/sbin:/sbin:/usr/bin:/bin
archs:
- amd64
- 生成证书
docker run --rm -v "${PWD}":/work cgr.dev/chainguard/melange keygen
- 构建apk
docker run --rm --privileged -v "${PWD}":/work \
cgr.dev/chainguard/melange build demo.yaml \
--arch amd64 \
--signing-key melange.rsa
- 构建镜像
docker run --rm -v "${PWD}":/work \
cgr.dev/chainguard/apko build --debug app-base.yaml \
dalongdemoapp:v1 dalongdemoapp.tar -k melange.rsa.pub \
--arch amd64
- 效果
- 加载运行效果
docker load < dalongdemoapp.tar
docker run -it dalongdemoapp:v1-amd64
效果
说明
基于melange+apko 对于构建基于alpine apk 的容器镜像是一个不错的选择
参考资料
https://docs.sigstore.dev/cosign/sign/
https://github.com/rongfengliang/melange_apko_learning
https://github.com/chainguard-dev/apko
https://github.com/chainguard-dev/melange
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· spring官宣接入deepseek,真的太香了~
2021-04-14 cube.js 通过prepareCompiler获取 meta
2020-04-14 easy-rules spring boot集成使用二
2020-04-14 easy-rules spring boot集成使用
2019-04-14 edgedb 基本试用
2018-04-14 osquery简单试用