Skip to content

Commit

Permalink
Release 2.1.0 (#10)
Browse files Browse the repository at this point in the history
* Added support for better S6 Versioning

* Fixed env reference

* Removed env

* Fixed build arg

* Copy file first

* Removed repo version

* Udpated docs

* Set S6 overlay to 3.1.2.1 for this release

* Added new header
  • Loading branch information
jaydrogers authored Apr 18, 2023
1 parent 424403d commit edbf71b
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 8 deletions.
Binary file modified .github/header.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 13 additions & 4 deletions .github/workflows/service_docker-build-and-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ on:
jobs:
docker-publish:
runs-on: ubuntu-22.04
env:
LATEST_UBUNTU_VERSION: "22.04"
strategy:
# We want to limit the number of jobs to the number of versions that we're offering (since we want the dependency order to be built correctly)
max-parallel: 2
Expand Down Expand Up @@ -68,14 +70,21 @@ jobs:

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: "⚡️ Get the S6 version from the version file"
run: echo "S6_OVERLAY_VERSION=$(./s6-overlay_version.txt)" >> $GITHUB_ENV

- name: "👨‍🔬 Set docker tags: Non-Release "
if: inputs.checkout-type == 'branch'
run: echo "DOCKER_TAGS=serversideup/s6-overlay:${{ inputs.tag-prefix}}${{ matrix.linux-flavor }}-${{ matrix.version }}" >> $GITHUB_ENV

- name: "🚀 Set docker tags: Release"
if: inputs.checkout-type == 'latest-stable'
run: echo "DOCKER_TAGS=serversideup/s6-overlay:${{ inputs.tag-prefix}}${{ matrix.linux-flavor }}-${{ matrix.version }}, serversideup/s6-overlay:${{ inputs.tag-prefix}}${{ matrix.linux-flavor }}-${{ matrix.version }}-${{ steps.latest-stable-version.outputs.LATEST_STABLE_VERSION }}" >> $GITHUB_ENV
- name: "🚀 Set docker tags: Other Ubuntu Release"
if: ${{ matrix.version != env.LATEST_UBUNTU_VERSION && inputs.checkout-type == 'latest-stable' }}
run: echo "DOCKER_TAGS=serversideup/s6-overlay:${{ matrix.linux-flavor }}-${{ matrix.version }}, serversideup/s6-overlay:${{ matrix.linux-flavor }}-${{ matrix.version }}-${{ env.S6_OVERLAY_VERSION }}" >> $GITHUB_ENV

- name: "🚀 Set docker tags: Latest Ubuntu Release"
if: ${{ matrix.version == env.LATEST_UBUNTU_VERSION && inputs.checkout-type == 'latest-stable' }}
run: echo "DOCKER_TAGS=serversideup/s6-overlay:${{ matrix.linux-flavor }}-${{ matrix.version }}, serversideup/s6-overlay:${{ matrix.linux-flavor }}-${{ matrix.version }}-${{ env.S6_OVERLAY_VERSION }}, serversideup/s6-overlay:${{ env.S6_OVERLAY_VERSION }}, serversideup/s6-overlay:latest" >> $GITHUB_ENV

- name: Build and push
uses: docker/build-push-action@v3
Expand All @@ -88,7 +97,7 @@ jobs:
linux/ppc64le
linux/s390x
build-args: |
BASE_OS_IMAGE=${{ matrix.linux-flavor }}:${{ matrix.version }}
BASE_IMAGE=${{ matrix.linux-flavor }}:${{ matrix.version }}
pull: true
push: true
tags: ${{ env.DOCKER_TAGS }}
6 changes: 4 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,15 @@ FROM ${BASE_IMAGE} as build
ARG S6_DIR=/opt/s6/
ARG S6_SRC_DEP="xz-utils wget"
ARG S6_SRC_URL="https://github.com/just-containers/s6-overlay/releases/download"
ARG S6_VERSION="v3.1.2.1"

ENV DEBIAN_FRONTEND="noninteractive" \
S6_KEEP_ENV=1

# install S6 Overlay
RUN mkdir -p $S6_DIR; \
COPY s6-overlay_version.txt /tmp/s6-overlay_version.txt

RUN S6_VERSION=$(cat /tmp/s6-overlay_version.txt); \
mkdir -p $S6_DIR; \
apt-get update; \
apt-get install -yq $S6_SRC_DEP --no-install-recommends --no-install-suggests; \
export SYS_ARCH=$(uname -m); \
Expand Down
14 changes: 12 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,19 +34,29 @@ All of our software is free an open to the world. None of this can be brought to
# Available Docker Images
This is a list of the docker images this repository creates:

To make it easy for you, there are also other tags available to give you the best experience:
| 🏷️ Tag | 👇 Example | 📖 More Info |
|---------------------------------------------|-------------------------|---------------|
| **Operating System Version** | `ubuntu-22.04` | Select your operating system version with the latest version of S6 Overlay. |
| **Operating System Version + S6 Version** | `ubuntu-22.04-v3.1.4.2` | Select your operating system version and version of S6 Overlay |
| **S6 Overlay Version** | `v3.1.4.2` | Use the latest operating system at the time, but a specific version of S6 overlay |
| **Latest** | `latest` | Use the latest version of Ubuntu and S6 Overlay |

### Other options
Here are a few examples. We also have beta images and "edge" images for pull requests.

| ⚙️ Operating System | 🎁 Version |
|------------------|--------------|
| Ubuntu 20.04 | [ubuntu-20.04](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=20.04), [beta-ubuntu-20.04](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=beta-20.04), [edge-{{PR number}}](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=edge) |
| Ubuntu 22.04 | [ubuntu-22.04](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=22.04), [beta-ubuntu-22.04](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=beta-22.04), [edge-{{PR number}}](https://hub.docker.com/r/serversideup/s6-overlay/tags?page=1&ordering=last_updated&name=edge) |


# What is S6 Overlay?
[S6 Overlay](https://github.com/just-containers/s6-overlay) is a process supervisor that allows you to make any app disposable and repeatable within one container, even if you need two processes to run it (like PHP).

Instead of running [Supervisor](https://github.com/Supervisor/supervisor) inside of your container, S6 Overlay was built specifically for the lifecycle of containers -- giving you a more accurate way of bringing containers down and monitoring their health.

# Aren't you only supposed to run one process per container?
In a perfect world, yes. But this isn't a perfect world. See a great explanation called ["The Docker Way" by the S6 Overlay](https://github.com/just-containers/s6-overlay#the-docker-way) team for an excellent explaination.
In a perfect world, yes. But this isn't a perfect world. See a great explanation called ["The Docker Way" by the S6 Overlay](https://github.com/just-containers/s6-overlay#the-docker-way) team for an excellent explanation.

### Usage
Simply use this image name pattern in any of your projects:
Expand Down
1 change: 1 addition & 0 deletions s6-overlay_version.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
v3.1.2.1

0 comments on commit edbf71b

Please sign in to comment.