Are the Clear Linux Docker images still maintained?

Hi there,

I am using the Golang (clearlinx/golang) and MariaDb (clearlinux/mariadb) Docker images but I see that they are last updated 7 months ago. Will these (and the other images) be updated soon?

I would really like to have the latest security and performance updates…

Thanks in advance.

Hello,

First thank you for saying something since I didn’t notice the failed update attempts. I’m sorry to say we are going to have to pull these for awhile as migrate to another hosting provider as our dockerhub account isn’t able to use their API for automated image updates.

The container image definitions are fairly quick to build yourself in the meantime as a work around. The repo has all the recipes.

3 Likes

Hi @william.douglas,

Thanks for following up! Good to hear you’re working on it. In the meanwhile I will use the linked repo.

The recipes aren’t very usable since they’re multistage and only work off of the clearlinux:latest tag. Could you restore / publish older release tags to Dockerhub for “clearlinux” base so folks can run recipes to rebuild their old images?

I agree it is more work to not use older versions though the specific versions of the base image aren’t something we could readily duplicate as they aren’t tracked in the dockerfiles or elsewhere when we have the publish job run.

If you want to build a specific version we do have the base image archives located here and with a little work you can build the containers based on those.

Thanks, I’ve been able to rebuild some old images using that linked repo. It was very hard to find though, any chance you can update the README for GitHub - clearlinux/dockerfiles: Clear Linux-based Docker containers to indicate the key missing image is at GitHub - clearlinux/docker-brew-clearlinux: Dockerhub image snapshots for Clear Linux ?

No chance of restoring the old Dockerhub repositories? This almost feels like the Node leftpad situation in terms of effects on downstream users.

In case anyone needs an explicit recipe, here’s how I rebuilt my dependency on clearlinux/python:3.7.4

  1. The release archives for that particular version is here. Manually searched through package-sources until finding the desired Python:
    python3 3.7.4 185

  2. Clone the base repo clearlinux/docker-brew-clearlinux. It’s huge so shallow clone only the desired release:
    git clone --depth 1 --branch base-31110 https://github.com/clearlinux/docker-brew-clearlinux.git

  3. Build that image and tag it:

cd docker-brew-clearlinux
docker build -t clearlinux:31110 .
  1. Now clone the repo clearlinux/dockerfiles for the multi stage images.
  2. Edit os-core/Dockerfile to use the tag from earlier:
-FROM clearlinux:latest AS builder
+FROM clearlinux:31110 AS builder
  1. Build it:
cd dockerfiles/os-core
docker build -t clearlinux/os-core:31110 --build-arg swupd_args="-m 31110" .
  1. Edit python/Dockerfile to use the tag from earlier:
-FROM clearlinux:latest AS builder
+FROM clearlinux:31110 AS builder
-COPY --from=clearlinux/os-core:latest /usr/lib/os-release /
+COPY --from=clearlinux/os-core:31110 /usr/lib/os-release /
-COPY --from=clearlinux/os-core:latest / /os_core_install/
+COPY --from=clearlinux/os-core:31110 / /os_core_install/
  1. Build it
cd ../python
docker build -t clearlinux/python:3.7.4 --build-arg swupd_args="-m 31110" .
  1. Verify old python!
$ docker run clearlinux/python:3.7.4python --version
Python 3.7.4

Note the tag in the last step would be based on your own Dockerfile’s dep.

3 Likes

README is updated. Thanks for the suggestion.

dockerhub doesn’t appear to support restoring after the repo has been removed.

I would imagine such an operation would require submitting a support ticket since it’d require possibly pulling large amounts of data from cold storage and re-indexing. Maybe if you ask Dockerhub to consider traffic patterns for those repos they’d be sympathetic to doing the restore.

Alrighty, the images are now being published on github packages so you can get the images via ghcr.io/clearlinux with the names previously available on dockerhub generally.

1 Like

Thanks. How am I supposed to access that link though? When I click on it I get a 404 error.

Tack on the name of the image that you’re trying to access e.g. for postgres it’s ghcr.io/clearlinux/postrgres and that redirects to Package postgres (github.com)
You can get the list from official-images/library at master · docker-library/official-images (github.com)

1 Like

I am also trying out the GitHub Container Registry for Clearlinux, but get a 404 not found error.

Am I missing something? I suspect that it’s still private…

Oops I needed to change a setting to make the containers visible publicly. Packages · Clear Linux* Project · GitHub should now be showing the container images correctly.

1 Like

Thanks for following up. It works now :slight_smile:

Sorry for interrupting again…

What is the update cadance of the GitHub Container Registry? I see that Golang has a new version but this is not yet reflected in an update.

And would it be possible to have a ‘latest’ version that is based on the latest version of the Clear Linux base image?

Thanks in advance.

It looks like we are missing some CI change somewhere still…