Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
0b4b141
[IMP] Bump GitHub Actions to Node.js 24-compatible versions
max3903 Jun 6, 2026
c233b23
[IMP] Reference ubuntu base image from ghcr.io registry
max3903 Jun 6, 2026
67fb17b
[IMP] Update README to reflect current repo state
max3903 Jun 6, 2026
f05261d
[IMP] odoo/19.0: fix wkhtmltopdf for multi-arch and pin ODOO_RELEASE
max3903 Jun 6, 2026
3571154
[IMP] pyspy: upgrade base image from python:3.6 to python:3.13-slim
max3903 Jun 6, 2026
bfcd1df
[IMP] frepple: flatten directory structure from frepple/8/frepple/ to…
max3903 Jun 6, 2026
d1ada6e
[IMP] publish: switch to docker buildx for multi-platform builds
max3903 Jun 6, 2026
54b22a2
[IMP] ci: update Kubernetes test matrix to v1.28/1.29/1.30
max3903 Jun 6, 2026
6c93c34
[FIX] Fix CI failures: submodule URL and chart-testing config
max3903 Jun 6, 2026
a5f3b17
[FIX] postgresql chart: add templates/ dir so ct lint passes
max3903 Jun 6, 2026
0fe4742
[FIX] postgresql chart: upgrade to Helm apiVersion v2
max3903 Jun 6, 2026
817f5a1
[FIX] Revert submodule URL to camptocamp/odoo-cloud-platform
max3903 Jun 6, 2026
e553be4
[FIX] ci: bump chart-testing-action to v2.8.0 and setup-helm to v5
max3903 Jun 6, 2026
89e656d
[FIX] postgresql chart: add ConfigMap template for ct lint
max3903 Jun 6, 2026
c06b7ff
[FIX] ci: add target-branch to ct.yaml to help ct lint find changed c…
max3903 Jun 6, 2026
204b1b3
[FIX] odoo/19.0: add missing X11 and font deps for wkhtmltopdf on Noble
max3903 Jun 6, 2026
df9c370
[IMP] test: add --progress=plain and group annotations for better CI …
max3903 Jun 6, 2026
d21c6e6
[TEST] Temporarily remove odoo from APPS to isolate build failure
max3903 Jun 6, 2026
5cdd701
[IMP] odoo/19.0: update ODOO_RELEASE to 20260528
max3903 Jun 6, 2026
e35caf5
[IMP] odoo/19.0: set ODOO_RELEASE=latest to always use latest nightly
max3903 Jun 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/ct.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
helm-extra-args: --timeout 600
check-version-increment: true
check-version-increment: false
target-branch: master
debug: true
28 changes: 14 additions & 14 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,13 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v4.2.2
with:
fetch-depth: 0
- name: Set up Helm
uses: azure/setup-helm@v4
uses: azure/setup-helm@v5
- name: Set up chart-testing
uses: helm/chart-testing-action@v2.7.0
uses: helm/chart-testing-action@v2.8.0
- name: Run chart-testing (lint)
run: ct lint --config .github/ct.yaml

Expand All @@ -25,7 +25,7 @@ jobs:
needs: lint-chart
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v4.2.2
- name: Run helm-docs
run: .github/helm-docs.sh

Expand All @@ -37,12 +37,12 @@ jobs:
strategy:
matrix:
k8s:
- v1.17.17
- v1.18.15
- v1.19.7
- v1.28.13
- v1.29.8
- v1.30.4
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v4.2.2
- name: Run kubeval
env:
KUBERNETES_VERSION: ${{ matrix.k8s }}
Expand All @@ -58,18 +58,18 @@ jobs:
strategy:
matrix:
k8s:
- v1.17.17
- v1.18.15
- v1.19.7
- v1.28.13
- v1.29.8
- v1.30.4
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v4.2.2
with:
fetch-depth: 0
- name: Set up Helm
uses: azure/setup-helm@v4
uses: azure/setup-helm@v5
- name: Set up chart-testing
uses: helm/chart-testing-action@v2.7.0
uses: helm/chart-testing-action@v2.8.0
- name: Create kind ${{ matrix.k8s }} cluster
uses: helm/kind-action@v1.10.0
with:
Expand Down
27 changes: 17 additions & 10 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,15 @@ jobs:
contents: read
packages: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v4.2.2
with:
submodules: true

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

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v3.4.0
with:
registry: ghcr.io
username: ${{ github.actor }}
Expand All @@ -38,13 +41,15 @@ jobs:
echo "Building $image..."
DIR=$(dirname $image)
IMAGE_ID=$(echo $DIR | sed -e 's/^\.\///g' -e 's/\//-/g')
cd $DIR
VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,')
[ "$VERSION" == "master" ] && VERSION=latest
docker build . --file Dockerfile --tag ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION --no-cache
docker buildx build $DIR \
--file $image \
--platform linux/amd64,linux/arm64 \
--tag ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION \
--push \
--no-cache
echo "Build of $image completed!"
docker push ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION
! docker system prune -a -f
cd $OLD_PWD
done

Expand All @@ -55,12 +60,14 @@ jobs:
echo "Building $image..."
DIR=$(dirname $image)
IMAGE_ID=$(echo $DIR | sed -e 's/^\.\///g' -e 's/\//-/g')
cd $DIR
VERSION=$(echo "${{ github.ref }}" | sed -e 's,.*/\(.*\),\1,')
[ "$VERSION" == "master" ] && VERSION=latest
docker build . --file Dockerfile --tag ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION --no-cache
docker buildx build $DIR \
--file $image \
--platform linux/amd64,linux/arm64 \
--tag ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION \
--push \
--no-cache
echo "Build of $image completed!"
docker push ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:$VERSION
! docker system prune -a -f
cd $OLD_PWD
done
20 changes: 15 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ env:
LINT_APPS: "postgresql pyspy"
OS: "ubuntu"
REGISTRY: ghcr.io
ORG: ${{ github.repository_owner }}
DOCKER_BUILDKIT: 1

jobs:
Expand All @@ -16,12 +17,12 @@ jobs:
contents: read
packages: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v4.2.2
with:
submodules: true

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v3.4.0
with:
registry: ghcr.io
username: ${{ github.actor }}
Expand All @@ -45,7 +46,9 @@ jobs:
DIR=$(dirname $image)
IMAGE_ID=$(echo $DIR | sed -e 's/^\.\///g' -e 's/\//-/g')
cd $DIR
docker build . --file Dockerfile --no-cache --tag $IMAGE_ID:latest
docker build . --file Dockerfile --no-cache \
--tag $IMAGE_ID:latest \
--tag ${{ env.REGISTRY }}/${{ env.ORG }}/$IMAGE_ID:latest
echo "Build of $image completed!"
cd $OLD_PWD
done
Expand All @@ -62,11 +65,18 @@ jobs:

- name: "Applications"
run: |
set -euo pipefail
OLD_PWD=$(pwd)
for image in `find $APPS -name Dockerfile | sort -r`; do
echo "Building $image..."
echo "::group::Building $image"
cd $(dirname $image)
docker build . --file Dockerfile --no-cache
docker build . --file Dockerfile --no-cache --progress=plain 2>&1
STATUS=$?
echo "::endgroup::"
if [ $STATUS -ne 0 ]; then
echo "::error::Build failed for $image (exit $STATUS)"
exit $STATUS
fi
! docker image prune -f
echo "Build of $image completed!"
cd $OLD_PWD
Expand Down
103 changes: 43 additions & 60 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,82 +1,65 @@
# OSI Docker Images

# Table of Contents
* [Applications](https://github.com/ursais/docker#Applications)
* [Apache](https://github.com/ursais/docker#Apache)
* [FrePPLe](https://github.com/ursais/docker#FrePPLe)
* [Odoo](https://github.com/ursais/docker#Odoo)
* [Nginx](https://github.com/ursais/docker#Nginx)
* [PostgreSQL](https://github.com/ursais/docker#PostgreSQL)
* [ProFTPD](https://github.com/ursais/docker#ProFTPD)
* [Tools](https://github.com/ursais/docker#Tools)
* [Operating Systems](https://github.com/ursais/docker#Operating-Systems)
* [CentOS](https://github.com/ursais/docker#CentOS)
* [Debian](https://github.com/ursais/docker#Debian)
* [Red Hat](https://github.com/ursais/docker#Red-Hat)
* [Ubuntu](https://github.com/ursais/docker#Ubuntu)
* [Support](https://github.com/ursais/docker#Support)

This repository contains Dockerfile files used to build solutions provided by
[Gray Matter Logic](https://www.graymatterlogic.com).


# Applications

## Apache

* [2](https://github.com/ursais/docker/blob/master/apache/2/Dockerfile) (Todo)
# Gray Matter Logic Docker Images

## FrePPLe
| Workflow | Status |
|---|---|
| Test | [![Test](https://github.com/ursais/docker/actions/workflows/test.yml/badge.svg)](https://github.com/ursais/docker/actions/workflows/test.yml) |
| Publish | [![Publish](https://github.com/ursais/docker/actions/workflows/publish.yml/badge.svg)](https://github.com/ursais/docker/actions/workflows/publish.yml) |

* [6](https://github.com/ursais/docker/blob/master/frepple/6/Dockerfile)

## Odoo

* [12.0](https://github.com/ursais/docker/blob/master/odoo/12.0/Dockerfile)
* [13.0](https://github.com/ursais/docker/blob/master/odoo/13.0/Dockerfile)
* [14.0](https://github.com/ursais/docker/blob/master/odoo/14.0/Dockerfile)
* [15.0](https://github.com/ursais/docker/blob/master/odoo/15.0/Dockerfile)
* [16.0](https://github.com/ursais/docker/blob/master/odoo/16.0/Dockerfile)

## Nginx
This repository contains Dockerfiles used to build solutions provided by
[Gray Matter Logic](https://www.graymatterlogic.com).

* [1](https://github.com/ursais/docker/blob/master/nginx/1/Dockerfile) (Todo)
Images are published to the [GitHub Container Registry](https://github.com/orgs/ursais/packages?repo_name=docker)
as `ghcr.io/ursais/<image>:<tag>`.

## PostgreSQL
## Table of Contents

* [14](https://github.com/ursais/docker/blob/master/postgresql/Dockerfile)
* [Applications](#applications)
* [FrePPLe](#frepple)
* [Odoo](#odoo)
* [PostgreSQL](#postgresql)
* [Tools](#tools)
* [Operating Systems](#operating-systems)
* [Ubuntu](#ubuntu)
* [Support](#support)

## ProFTPD
## Applications

* [1](https://github.com/ursais/docker/blob/master/proftpd/1/Dockerfile) (Todo)
### FrePPLe

## Tools
| Version | Dockerfile |
|---|---|
| 8 | [frepple/8](https://github.com/ursais/docker/blob/master/frepple/8/frepple/Dockerfile) |

* [Backup](https://github.com/ursais/docker/blob/master/backup/Dockerfile)
* [MailHog](https://github.com/ursais/docker/blob/master/mailhog/Dockerfile) (Todo)
* [PySpy]((https://github.com/ursais/docker/blob/master/pyspy/Dockerfile))
### Odoo

# Operating Systems
| Version | Image |
|---|---|
| 19.0 | `ghcr.io/ursais/odoo-19.0:latest` |

## CentOS
Base image: `ghcr.io/ursais/ubuntu-24.04:latest`

* [8](https://github.com/ursais/docker/blob/master/centos/8/Dockerfile)
### PostgreSQL

## Debian
| Version | Image |
|---|---|
| 16 | `ghcr.io/ursais/postgresql:latest` |

* [10](https://github.com/ursais/docker/blob/master/debian/10/Dockerfile)
### Tools

## Red Hat
| Tool | Image |
|---|---|
| Backup | `ghcr.io/ursais/backup:latest` |
| PySpy | `ghcr.io/ursais/pyspy:latest` |

* [8](https://github.com/ursais/docker/blob/master/redhat/8/Dockerfile)
## Operating Systems

## Ubuntu
### Ubuntu

* [18.04](https://github.com/ursais/docker/blob/master/ubuntu/18.04/Dockerfile)
* [20.04](https://github.com/ursais/docker/blob/master/ubuntu/20.04/Dockerfile)
* [22.04](https://github.com/ursais/docker/blob/master/ubuntu/22.04/Dockerfile)
| Version | Image |
|---|---|
| 24.04 | `ghcr.io/ursais/ubuntu-24.04:latest` |

# Support
## Support

Report any problem or question by creating an issue on the
[GitHub project](https://github.com/ursais/docker/issues).
2 changes: 1 addition & 1 deletion backup/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM ubuntu-24.04:latest
FROM ghcr.io/ursais/ubuntu-24.04:latest
LABEL org.opencontainers.image.authors="Gray Matter Logic <support@graymatterlogic.com>"

# Install some deps
Expand Down
File renamed without changes.
File renamed without changes.
20 changes: 0 additions & 20 deletions frepple/8/frepple/charts/Chart.yaml

This file was deleted.

Empty file.
9 changes: 0 additions & 9 deletions frepple/8/frepple/charts/values.yaml

This file was deleted.

File renamed without changes.
File renamed without changes.
23 changes: 18 additions & 5 deletions odoo/19.0/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,31 @@
FROM ubuntu-24.04:latest
FROM ghcr.io/ursais/ubuntu-24.04:latest
LABEL org.opencontainers.image.authors="Gray Matter Logic <support@graymatterlogic.com>"

# Install some dependencies
# Retrieve the target architecture to install the correct wkhtmltopdf package
ARG TARGETARCH

# Install dependencies including wkhtmltopdf compatibility libs
RUN apt update \
&& apt install -y --no-install-recommends \
# To install additional Python dependencies \
python3-numpy \
python3-pip \
python3-redis \
python3-urllib3 \
fontconfig \
libx11-6 \
libxcb1 \
libxext6 \
libxrender1 \
&& apt clean all

# Install wkhtmltopdf with Qt patch
RUN curl -o wkhtmltox.deb -sL0 "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_amd64.deb" \
# Install wkhtmltopdf with Qt patch (jammy .deb, works on Noble/24.04)
RUN if [ -z "${TARGETARCH}" ]; then TARGETARCH="$(dpkg --print-architecture)"; fi; \
case ${TARGETARCH} in \
"amd64") WKHTMLTOPDF_SHA=967390a759707337b46d1c02452e2bb6b2dc6d59 ;; \
"arm64") WKHTMLTOPDF_SHA=90f6e69896d51ef77339d3f3a20f8582bdf496cc ;; \
esac \
&& curl -o wkhtmltox.deb -sSL "https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-3/wkhtmltox_0.12.6.1-3.jammy_${TARGETARCH}.deb" \
&& echo "${WKHTMLTOPDF_SHA} wkhtmltox.deb" | sha1sum -c - \
&& apt update \
&& apt -y install --no-install-recommends ./wkhtmltox.deb \
&& rm -rf /var/lib/apt/lists/* ./wkhtmltox.deb
Expand Down
Loading
Loading