Automate urbackup-server docker builds

It would be a great enhancement if urbackup-server docker images were kept up to date with automated build system. Running an image a year old typically means with other components and images are out of date. This has security implication though if the end users experience enough it could be updated manually per image.

I would love to see urbackup server included in truecharts as part of the application catalog in TrueNas Scale. Because the image has not been kept up to date it’s been denied inclusion in the app catalog. Automating the builds would go a long way to securing in the form of best practice and giving confidence to other projects that are wanting to include urbackup. Thank you for your time!

No problem, I though. Just click on the build button in Docker hub. Only Docker has discontinued free use of automated builds. https://github.com/themorlan put work into this :frowning: .

So I guess, help wanted migrating the Dockerhub automated build to Github Actions…

As for migrating Dockerhub automated build to Github Actions. In order to properly set this up generating secrets is necessary in Github. The following video with Github Action build-push-action seems to do the heavy lifting.

name: ci

on:
  push:
    branches:
      - 'master'
jobs:
  docker:
    runs-on: ubuntu-latest
    steps:
      -
        name: Checkout
        uses: actions/checkout@v2
      -
        name: Set up QEMU
        uses: docker/setup-qemu-action@v1
      -
        name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v1
      -
        name: Login to DockerHub
        uses: docker/login-action@v1 
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_TOKEN }}
      -
        name: Build and push
        uses: docker/build-push-action@v2
        with:
          context: .
          platforms: linux/amd64,linux/arm64
          push: true
          tags: user/app:latest

I’m not sure quite how your multi-arch-manifest would fit in but I’m sure it’s possible. It’s all the time I have at the moment.

I think I got it working. That build.sh file still needs adjustment/docker buildx documentation if someone is interested in doing that.

And can someone test if it works on a ARM machine?

I will try to do that in the next day or so to test if it works on a ARM machine.

Hi, can you please check your automation flow? There’s a new docker image being built every day, which is useless because you’re not making changes everyday.

I have an automation to pull new docker images every day, and this is causing unnecessary overhead. Please publish a new docker image only when there are changes.
Thanks

Removed the daily builds.

1 Like