Skip to content

crazy-max/docker-alpine-s6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Docker Stars Docker Pulls
Become a sponsor Donate Paypal

About

Alpine Linux with s6 overlay.

Tip

Want to be notified of new releases? Check out 🔔 Diun (Docker Image Update Notifier) project!


Features

Usage

This repository provides two images. The first one is built on top of alpine so, you can use it as a base image for your own images:

FROM crazymax/alpine-s6:3.20
RUN apk add --no-cache nginx
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
CMD ["/usr/sbin/nginx"]

Note

ENTRYPOINT ["/init"] is already defined in the base image so no need to add this command.

The second one is a distribution image. This is a multi-platform scratch image that only contains all the scripts and binaries needed to run s6-overlay. This way you can use any base image and use the COPY --from command to copy the assets inside your image:

FROM ubuntu
COPY --from=crazymax/alpine-s6-dist:3.20 / /
RUN apt-get update && apt-get install -y nginx
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
CMD ["/usr/sbin/nginx"]
ENTRYPOINT ["/init"]

Alpine image

Registry Image
Docker Hub crazymax/alpine-s6
GitHub Container Registry ghcr.io/crazy-max/alpine-s6
$ docker buildx imagetools inspect crazymax/alpine-s6 --format "{{json .Manifest}}" | \
  jq -r '.manifests[] | select(.platform.os != null and .platform.os != "unknown") | .platform | "\(.os)/\(.architecture)\(if .variant then "/" + .variant else "" end)"'

linux/386
linux/amd64
linux/arm/v6
linux/arm/v7
linux/arm64
linux/ppc64le
linux/riscv64
linux/s390x

Dist image

Registry Image
Docker Hub crazymax/alpine-s6-dist
GitHub Container Registry ghcr.io/crazy-max/alpine-s6-dist
$ docker buildx imagetools inspect crazymax/alpine-s6-dist --format "{{json .Manifest}}" | \
  jq -r '.manifests[] | select(.platform.os != null and .platform.os != "unknown") | .platform | "\(.os)/\(.architecture)\(if .variant then "/" + .variant else "" end)"'

linux/386
linux/amd64
linux/arm/v6
linux/arm/v7
linux/arm64
linux/ppc64le
linux/riscv64
linux/s390x

Supported tags

  • edge, edge-x.x.x.x
  • latest-edge, 3.20-edge
  • latest, latest-x.x.x.x, 3.20, 3.20-x.x.x.x
  • 3.19-edge
  • 3.19, 3.19-x.x.x.x
  • 3.18-edge
  • 3.18, 3.18-x.x.x.x
  • 3.17-edge
  • 3.17, 3.17-x.x.x.x
  • 3.16-edge
  • 3.16, 3.16-x.x.x.x
  • 3.15-edge
  • 3.15, 3.15-x.x.x.x

x.x.x.x has to be replaced with one of the s6-overlay releases available (e.g. 3.1.0.1).

Build

git clone https://github.com/crazy-max/docker-alpine-s6.git
cd docker-alpine-s6

# Build image and output to docker (default)
docker buildx bake

# Build tarballs to ./dist
docker buildx bake artifact-all

# Build multi-platform image
docker buildx bake image-all

# Build multi-platform dist image
docker buildx bake image-dist-all

Contributing

Want to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. You can also support this project by becoming a sponsor on GitHub or by making a PayPal donation to ensure this journey continues indefinitely!

Thanks again for your support, it is much appreciated! 🙏

License

MIT. See LICENSE for more details.