Compare commits

...

16 Commits

Author SHA1 Message Date
William Douglas 416e85767f postgresql: remove version strings 2024-06-17 10:12:58 -07:00
William Douglas e1d7e33abe Fix Dockerfile issues for postgresql and php 2024-06-17 10:05:53 -07:00
William Douglas 78b66a1980 Add a little logging 2024-06-17 10:00:53 -07:00
William Douglas eeaa2f4a8a Fix typo and missing job dependency 2024-06-17 09:48:54 -07:00
William Douglas 7fcefddb0a Fix prereq steps not being split-up 2024-06-17 09:42:18 -07:00
William Douglas 6bda9b187f Fix yaml error 2024-06-17 09:40:18 -07:00
William Douglas e44821c40f Rework release workflow to split up image creation
Trying to run creation in a single job exhausts disk space while
also being slower than running a matrix. As only two image are
required for the others to build, run those in serial then the rest in
a matrix.
2024-06-17 09:32:04 -07:00
William Douglas f348aa4d2f Fix clearlinux/httpd reference in cgit 2024-06-14 15:10:39 -07:00
William Douglas c9434359c7 Revert changes for to build ci images
These are just too big for github to build, skip building them for
now.
2024-06-14 14:54:44 -07:00
William Douglas 5a0a2fb808 Treat CI images as differently
Create the CI images in different job units to work around image size
issues.
2024-06-14 14:46:48 -07:00
William Douglas 13117a3da2 Try deleting some unused tools
The CI images are too big to build. Try and remove some unused tools
that are taking up a lot of space and see if that helps.
2024-06-14 14:22:47 -07:00
William Douglas 114295de66 Add workflow to publish container images on github
Note that variable expansion in --from and FROM was working oddly,
see: https://github.com/docker/cli/issues/3356#issuecomment-957892224
for context.
2024-06-14 13:31:19 -07:00
William Douglas a4c1b74808 Update process for setting up tests
Will still need to be revisited as test namespace has changed.
2024-06-14 13:30:27 -07:00
William Douglas 14fd212808 Update README to identify the docker-brew-clearlinux repo
Signed-off-by: William Douglas <william.r.douglas@gmail.com>
2024-06-13 12:39:42 -07:00
William Douglas f865f549b7 Remove lint install from dockerfile
The linter version gets outdated easily, let the install happen at CI
runtime.

Signed-off-by: William Douglas <william.douglas@intel.com>
2024-01-26 13:03:22 -08:00
djklimes c8ca992dfa Bump to reset idle 2023-09-25 13:01:13 -07:00
29 changed files with 235 additions and 103 deletions
+45
View File
@@ -0,0 +1,45 @@
name: Dockerfiles Release
on: create
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
cancel-in-progress: true
env:
GITHUB_TOKEN: ${{ github.token }}
jobs:
release-pre-reqs:
if: (github.event_name == 'create' && github.event.ref_type == 'tag')
name: Release image required by other images
runs-on: ubuntu-latest
steps:
- name: Code Checkout
uses: actions/checkout@v4
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and Push os-core
run: ./build-and-push-images.sh os-core ${{ github.event.ref }}
- name: Build and Push httpd
run: ./build-and-push-images.sh httpd ${{ github.event.ref }}
release-matrix:
needs: release-pre-reqs
if: (github.event_name == 'create' && github.event.ref_type == 'tag')
name: Release Matrix
strategy:
matrix:
image: ['cgit', 'golang', 'haproxy', 'iperf', 'mariadb', 'memcached', 'nginx', 'node', 'numpy-mp', 'perl', 'php', 'php-fpm', 'postgres', 'python', 'rabbitmq', 'r-base', 'redis', 'ruby', 'tesseract-ocr']
runs-on: ubuntu-latest
steps:
- name: Code Checkout
uses: actions/checkout@v4
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and Push
run: ./build-and-push-images.sh ${{ matrix.image }} ${{ github.event.ref }}
+2 -3
View File
@@ -35,9 +35,8 @@ jobs:
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
- name: install - name: install
run: | run: |
sudo apt-get purge moby-engine moby-cli sudo apt-get install bats -f
sudo apt-get install docker.io bats -f
sudo modprobe -r overlay sudo modprobe -r overlay
sudo modprobe overlay redirect_dir=off sudo modprobe overlay redirect_dir=off
sudo systemctl restart docker sudo systemctl restart docker
+3 -2
View File
@@ -2,5 +2,6 @@ Clear Linux* based Docker Containers
==================================== ====================================
![](https://github.com/clearlinux/dockerfiles/workflows/CI/badge.svg) ![](https://github.com/clearlinux/dockerfiles/workflows/CI/badge.svg)
This repository holds all the Dockerfiles for Clear Linux based containers that are hosted at: This repository holds all the Dockerfiles for Clear Linux based containers.
https://hub.docker.com/u/clearlinux/
The base image can be found in Docker's base repository or at https://github.com/clearlinux/docker-brew-clearlinux/ (which also has previous image releases under branches).
+28
View File
@@ -0,0 +1,28 @@
#!/bin/bash
set -eu -o pipefail
create_image() {
local name="$1"
local ver="$2"
pushd "${name}"
echo "Creating ${name} for version ${ver}"
docker build -t ghcr.io/clearlinux/"${name}":"${ver}" . --build-arg="clear_ver=${ver}"
popd
}
push_image() {
local name="$1"
local ver="$2"
echo "Pushing ${name} for version ${ver}"
docker push ghcr.io/clearlinux/"${name}":"${ver}"
}
build_and_push_image() {
local name="$1"
local ver="$2"
create_image "${name}" "${ver}"
push_image "${name}" "${ver}"
}
build_and_push_image $1 $2
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/httpd:$clear_ver AS httpd
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/httpd:latest /usr/lib/os-release / COPY --from=httpd /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/httpd:latest / /os_core_install/ COPY --from=httpd / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/httpd:latest FROM httpd
COPY --from=builder /install_root / COPY --from=builder /install_root /
COPY cgitrc /etc/cgitrc COPY cgitrc /etc/cgitrc
+2 -1
View File
@@ -1,10 +1,11 @@
FROM clearlinux:latest FROM clearlinux:latest
ARG clear_ver
# Configure Go # Configure Go
ENV GOPATH="/go" PATH="/go/bin:${PATH}" ENV GOPATH="/go" PATH="/go/bin:${PATH}"
# Update and add bundles # Update and add bundles
RUN swupd update && \ RUN swupd update -V $clear_ver && \
swupd bundle-add sysadmin-basic storage-utils network-basic go-basic-dev devpkg-gtk3 clr-installer-gui && \ swupd bundle-add sysadmin-basic storage-utils network-basic go-basic-dev devpkg-gtk3 clr-installer-gui && \
swupd clean && \ swupd clean && \
# Install the Go Linters # Install the Go Linters
+1 -1
View File
@@ -68,7 +68,7 @@ function do_tag {
local image=$1 local image=$1
local pkg=$2 local pkg=$2
local base=$3 local base=$3
echo "=> Tagging the $image" echo "=> Tagging the $image"
local tag=$(get_tag $pkg) local tag=$(get_tag $pkg)
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,15 +1,18 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest as builder FROM clearlinux:latest as builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -24,11 +27,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+3 -4
View File
@@ -1,16 +1,15 @@
FROM clearlinux:latest FROM clearlinux:latest
ARG clear_ver
# Configure Go # Configure Go
ENV GOPATH /home/clr/go ENV GOPATH /home/clr/go
ENV PATH="/home/clr/go/bin:${PATH}" ENV PATH="/home/clr/go/bin:${PATH}"
# Update and add bundles # Update and add bundles
RUN swupd update && \ RUN swupd update -V $clear_ver && \
swupd bundle-add mixer go-basic c-basic os-core-update-dev sudo && \ swupd bundle-add mixer go-basic c-basic os-core-update-dev sudo && \
useradd -G wheelnopw clr && \ useradd -G wheelnopw clr && \
mkdir -p /run/lock mkdir -p /run/lock
USER clr USER clr
RUN git config --global user.email "travis@example.com" && \ RUN git config --global user.email "travis@example.com" && \
git config --global user.name "Travis CI" && \ git config --global user.name "Travis CI"
curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin v1.18.0
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
COPY default.conf /etc/nginx-mainline/conf.d/default.conf COPY default.conf /etc/nginx-mainline/conf.d/default.conf
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+2 -1
View File
@@ -1,9 +1,10 @@
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release # Move to latest Clear Linux release
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Install clean os-core bundle in target directory # Install clean os-core bundle in target directory
# using the new os version # using the new os version
+8 -5
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,14 +26,14 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
WORKDIR /root WORKDIR /root
CMD ["perl5.28.2","-de0"] CMD ["perl","-de0"]
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -32,11 +35,11 @@ opcache.revalidate_freq=${OPCACHE_REVALIDATE_FREQ}' >> /install_root/usr/share/d
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
ENV OPCACHE_REVALIDATE_FREQ=0 \ ENV OPCACHE_REVALIDATE_FREQ=0 \
OPCACHE_VALIDATE_TIMESTAMPS=0 \ OPCACHE_VALIDATE_TIMESTAMPS=0 \
+12 -10
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -16,25 +19,25 @@ RUN source /os-release && \
mkdir /install_root \ mkdir /install_root \
&& swupd os-install -V ${VERSION_ID} \ && swupd os-install -V ${VERSION_ID} \
--path /install_root --statedir /swupd-state \ --path /install_root --statedir /swupd-state \
--bundles=postgresql11,su-exec --no-boot-update --bundles=postgresql,su-exec --no-boot-update
# For some Host OS configuration with redirect_dir on, # For some Host OS configuration with redirect_dir on,
# extra data are saved on the upper layer when the same # extra data are saved on the upper layer when the same
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
ENV PATH $PATH:/usr/libexec/postgresql11 ENV PATH $PATH:/usr/libexec/postgresql
ENV PGDATA /var/lib/pgsql/data ENV PGDATA /var/lib/pgsql/data
RUN sed -i "s|#listen_addresses.*|listen_addresses = '*'|" /usr/share/postgresql11/postgresql.conf.sample && \ RUN sed -i "s|#listen_addresses.*|listen_addresses = '*'|" /usr/share/postgresql/postgresql.conf.sample && \
mkdir -p /run/postgresql11 && chown -R postgres:postgres /run/postgresql11 && \ mkdir -p /run/postgresql && chown -R postgres:postgres /run/postgresql && \
mkdir -p "$PGDATA" && chown -R postgres:postgres "$PGDATA" && \ mkdir -p "$PGDATA" && chown -R postgres:postgres "$PGDATA" && \
mkdir /docker-entrypoint-initdb.d && \ mkdir /docker-entrypoint-initdb.d && \
mkdir -p /usr/local/bin mkdir -p /usr/local/bin
@@ -42,8 +45,7 @@ RUN sed -i "s|#listen_addresses.*|listen_addresses = '*'|" /usr/share/postgresql
VOLUME /var/lib/pgsql/data VOLUME /var/lib/pgsql/data
COPY docker-entrypoint.sh /usr/local/bin/ COPY docker-entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/docker-entrypoint.sh && \ RUN chmod +x /usr/local/bin/docker-entrypoint.sh && \
ln -s /usr/local/bin/docker-entrypoint.sh / && \ ln -s /usr/local/bin/docker-entrypoint.sh /
ln -s /usr/share/postgresql11 /usr/share/postgresql
ENTRYPOINT ["docker-entrypoint.sh"] ENTRYPOINT ["docker-entrypoint.sh"]
+3 -3
View File
@@ -34,9 +34,9 @@ if [ "$1" = 'postgres' ] && [ "$(id -u)" = '0' ]; then
chown -R postgres "$PGDATA" chown -R postgres "$PGDATA"
chmod 700 "$PGDATA" chmod 700 "$PGDATA"
mkdir -p /var/run/postgresql11 mkdir -p /var/run/postgresql
chown -R postgres /var/run/postgresql11 chown -R postgres /var/run/postgresql
chmod 775 /var/run/postgresql11 chmod 775 /var/run/postgresql
# Create the transaction log directory before initdb is run (below) so the directory is owned by the correct user # Create the transaction log directory before initdb is run (below) so the directory is owned by the correct user
if [ "$POSTGRES_INITDB_WALDIR" ]; then if [ "$POSTGRES_INITDB_WALDIR" ]; then
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
ENV NAME="clearlinux-python" ENV NAME="clearlinux-python"
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -5
View File
@@ -1,15 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -24,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,11 +26,11 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /
+7 -4
View File
@@ -1,14 +1,17 @@
ARG clear_ver
FROM ghcr.io/clearlinux/os-core:$clear_ver AS core
FROM clearlinux:latest AS builder FROM clearlinux:latest AS builder
ARG clear_ver
ARG swupd_args ARG swupd_args
# Move to latest Clear Linux release to ensure # Move to latest Clear Linux release to ensure
# that the swupd command line arguments are # that the swupd command line arguments are
# correct # correct
RUN swupd update --no-boot-update $swupd_args RUN swupd update --no-boot-update -V $clear_ver $swupd_args
# Grab os-release info from the minimal base image so # Grab os-release info from the minimal base image so
# that the new content matches the exact OS version # that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release / COPY --from=core /usr/lib/os-release /
# Install additional content in a target directory # Install additional content in a target directory
# using the os version from the minimal base # using the os version from the minimal base
@@ -23,12 +26,12 @@ RUN source /os-release && \
# file exists on different layers. To minimize docker # file exists on different layers. To minimize docker
# image size, remove the overlapped files before copy. # image size, remove the overlapped files before copy.
RUN mkdir /os_core_install RUN mkdir /os_core_install
COPY --from=clearlinux/os-core:latest / /os_core_install/ COPY --from=core / /os_core_install/
RUN cd / && \ RUN cd / && \
find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true find os_core_install | sed -e 's/os_core_install/install_root/' | xargs rm -d &> /dev/null || true
FROM clearlinux/os-core:latest FROM core
COPY --from=builder /install_root / COPY --from=builder /install_root /