Browse Source

build: update Dockerfile for Ubuntu 22.04, 20.04, and 18.04

- Updated the Dockerfile for Ubuntu 22.04 to build gameservermanagers/steamcmd:ubuntu-22.04 image.
- Updated the Dockerfile for Ubuntu 20.04 to build gameservermanagers/steamcmd:ubuntu-20.04 image.
- Updated the Dockerfile for Ubuntu 18.04 to build gameservermanagers/steamcmd:ubuntu-18.04 image.

The changes include setting up QEMU and Docker Buildx, logging in to DockerHub and GitHub Container Registry, and building and pushing the images to their respective registries.

Closes #123
pull/29/head
Daniel Gibbs 2 years ago
parent
commit
eec7fc5047
  1. 51
      .github/workflows/docker-publish.yml

51
.github/workflows/docker-publish.yml

@ -3,37 +3,42 @@ name: Docker Publish
on:
workflow_dispatch:
push:
branches: ["main", "master"]
branches: "main"
paths:
- Dockerfile*
schedule:
- cron: "0 22 * * *"
- cron: "0 1 * * 6"
jobs:
ubuntu-2204:
build-ubuntu-2204:
name: Build Ubuntu 22.04
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
- name: Setup QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
- name: Setup Docker Buildx
uses: docker/[email protected]
- name: Build
run: docker build -t gameservermanagers/steamcmd:ubuntu-22.04 -f ./Dockerfile.ubuntu-2204 .
- name: Test
run: docker run --rm gameservermanagers/steamcmd:ubuntu-22.04 steamcmd +quit
- name: Login to DockerHub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push (Ubuntu 22.04)
uses: docker/[email protected]
with:
@ -49,30 +54,35 @@ jobs:
ghcr.io/gameservermanagers/steamcmd:ubuntu
ghcr.io/gameservermanagers/steamcmd:ubuntu-22.04
ubuntu-2004:
build-ubuntu-2004:
name: Build Ubuntu 20.04
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
- name: Setup QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
- name: Setup Docker Buildx
uses: docker/[email protected]
- name: Build
run: docker build -t gameservermanagers/steamcmd:ubuntu-20.04 -f ./Dockerfile.ubuntu-2004 .
- name: Test
run: docker run --rm gameservermanagers/steamcmd:ubuntu-20.04 steamcmd +quit
- name: Login to DockerHub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push (Ubuntu 20.04)
uses: docker/[email protected]
with:
@ -84,31 +94,36 @@ jobs:
gameservermanagers/steamcmd:ubuntu-20.04
ghcr.io/gameservermanagers/steamcmd:ubuntu-20.04
ubuntu-1804:
build-ubuntu-1804:
name: Build Ubuntu 18.04
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
- name: Setup QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
- name: Setup Docker Buildx
uses: docker/[email protected]
- name: Build
run: docker build -t gameservermanagers/steamcmd:ubuntu-18.04 -f ./Dockerfile.ubuntu-1804 .
- name: Test
run: docker run --rm gameservermanagers/steamcmd:ubuntu-18.04 steamcmd +quit
- name: Login to DockerHub
uses: docker/[email protected]
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push (Ubuntu 20.04)
- name: Build and push (Ubuntu 18.04)
uses: docker/[email protected]
with:
context: .

Loading…
Cancel
Save