- Create a docker file for image:
# Set a common base
FROM alpine as base
# Set required CNB information
ENV CNB_USER_ID=1000
ENV CNB_GROUP_ID=1000
ENV CNB_STACK_ID="io.buildpacks.miclip.stacks.alpine"
LABEL io.buildpacks.stack.id="io.buildpacks.miclip.stacks.alpine"
# Create the user and group
RUN addgroup -S cnb --gid ${CNB_GROUP_ID} && adduser -S cnb -G cnb --uid ${CNB_USER_ID}
# ========== ADDED ===========
# Install common packages
RUN apk update && \
apk add xz ca-certificates
FROM base as run
USER ${CNB_USER_ID}:${CNB_GROUP_ID}
- Docker build and push stack image...
docker build . -t gcr.io/some-project/tbs-examples/alpine:1.0.0
docker push gcr.io/some-project/tbs-examples/alpine:1.0.0
- Add to TBS
kp clusterstack create alpine -b gcr.io/some-project/tbs-examples/alpine:1.0.0 \
-r gcr.io/some-project/tbs-examples/alpine:1.0.0
- Verify stack
kp clusterstack list
alpine True io.buildpacks.miclip.stacks.alpine
base True io.buildpacks.stacks.bionic
default True io.buildpacks.stacks.bionic
full True io.buildpacks.stacks.bionic
tiny True io.paketo.stacks.tiny
More information: https://buildpacks.io/docs/operator-guide/create-a-stack/