Files
docker-images/README.md
T
ajp_anton 19456c6467
Build custom container images / build (map[build_args:PG_VERSION=18 POSTGIS_VERSION=3 VCHORD_VERSION=0.5.3 context:postgres name:postgres-custom tags:git.ajpanton.se/ajp_anton/postgres-custom:18 git.ajpanton.se/ajp_anton/postgres-custom:18-postgis3-vchord0.5.3 git.ajpanton.se/ajp_an… (push) Successful in 1m0s
Build custom container images / build (map[build_args:PHP_VERSION=8 context:php8-pgsql name:php8-pgsql tags:git.ajpanton.se/ajp_anton/php8-pgsql:8 git.ajpanton.se/ajp_anton/php8-pgsql:8-fpm-alpine git.ajpanton.se/ajp_anton/php8-pgsql:latest ]) (push) Successful in 42s
Build custom container images / build (map[build_args:PYTHON_VERSION=3 context:ai-tools-utils name:ai-tools-utils tags:git.ajpanton.se/ajp_anton/ai-tools-utils:3 git.ajpanton.se/ajp_anton/ai-tools-utils:latest ]) (push) Successful in 41s
Simplify AI tools utility image tags
2026-06-27 19:36:36 +00:00

120 lines
3.2 KiB
Markdown

# Custom Container Images
This repository builds a small set of OCI/container images published at
`git.ajpanton.se`.
The images are intended to stay close to their upstream base images while adding
a few commonly useful database/runtime extensions.
## Images
| Image | Description |
| --- | --- |
| `git.ajpanton.se/ajp_anton/postgres-custom:18` | PostgreSQL 18 with selected extension packages installed and `pg_cron`/VectorChord preloaded. |
| `git.ajpanton.se/ajp_anton/php8-pgsql:8` | PHP 8 FPM on Alpine with PostgreSQL client runtime support and the `pdo_pgsql` PHP extension enabled. |
| `git.ajpanton.se/ajp_anton/ai-tools-utils:3` | Python 3 utility image with ExifTool for AI/helper workflows. |
## Included Components
### `postgres-custom`
Base image:
- `postgres:18`
- Moving upstream major-version tag. Patch releases are picked up when the image
is rebuilt.
Installed from Debian/PostgreSQL apt repositories:
- `ca-certificates`
- `wget`
- `postgresql-18-cron`
- `postgresql-18-pgvector`
- `postgresql-18-postgis-3`
Installed from a GitHub release asset:
- VectorChord package `postgresql-18-vchord_0.5.3-1_amd64.deb`
- VectorChord is pinned to `0.5.3` at this time.
Runtime defaults added by this image:
- `shared_preload_libraries=pg_cron,vchord`
- `cron.database_name=firecrawl`
### `php8-pgsql`
Base image:
- `php:8-fpm-alpine`
- Moving upstream major-version tag. Patch releases are picked up when the image
is rebuilt.
Build-time package:
- `postgresql-dev`
Runtime package:
- `libpq`
Compiled PHP extension:
- `pdo_pgsql`
The compiled extension and PHP config are copied from a build stage into the
final runtime image.
### `ai-tools-utils`
Base image:
- `python:3`
- The image follows the moving Python 3 tag. When upstream Python 3 moves to a
new minor release, this image follows it on the next rebuild.
Installed from Debian apt repositories:
- `ca-certificates`
- `exiftool`
Intended use:
- Run small helper scripts mounted at runtime, for example media metadata
extraction scripts used by local AI tools.
- Keep host systems clean by avoiding host-level package installs.
## Tags
Moving deployment tags:
- `git.ajpanton.se/ajp_anton/postgres-custom:18`
- `git.ajpanton.se/ajp_anton/php8-pgsql:8`
- `git.ajpanton.se/ajp_anton/ai-tools-utils:3`
Descriptive tags:
- `git.ajpanton.se/ajp_anton/postgres-custom:18-postgis3-vchord0.5.3`
- `git.ajpanton.se/ajp_anton/php8-pgsql:8-fpm-alpine`
Convenience tags:
- `git.ajpanton.se/ajp_anton/postgres-custom:latest`
- `git.ajpanton.se/ajp_anton/php8-pgsql:latest`
- `git.ajpanton.se/ajp_anton/ai-tools-utils:latest`
Tags are mutable. The digest behind a tag may change after a rebuild even when
the tag name stays the same.
## Update Cadence
Images are rebuilt weekly. They may also be rebuilt after repository changes or
manual runs.
Each rebuild pulls the current upstream base image and installs the currently
available apt/apk packages. If the base image or repository packages changed,
the resulting image digest changes and the same tag points to the new image.
Pinned build inputs do not update automatically. In this repository, VectorChord
is pinned to `0.5.3`; changing it requires a repository update.