Add Timepoll availability polling application and image
Build custom container images / build (map[base_image:php:8-fpm-alpine build_args:PHP_VERSION=8
context:php8-pgsql fingerprint_command:{ apk info -v | LC_ALL=C sort; find /usr/local/lib/php/extensions /usr/local/etc/php/conf.d -type f -exec sha256sum {} + | LC_ALL=C sort; }
name:ph… (push) Successful in 49s
Build custom container images / build (map[base_image:postgres:18 build_args:PG_VERSION=18
POSTGIS_VERSION=3
VCHORD_VERSION=0.5.3
context:postgres fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; find /usr/lib/postgresql -type f -exec sha256su… (push) Successful in 1m42s
Build custom container images / build (map[base_image:python:3 build_args:PYTHON_VERSION=3
context:python-tools fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:python-tools oci_labels:org.opencontainers.ima… (push) Successful in 54s
Build custom container images / build (map[base_image:python:3.12-slim build_args:PYTHON_VERSION=3.12-slim
context:linkki-tiedotus fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:linkki-tiedotus oci_labels:… (push) Successful in 29s
Build custom container images / build (map[base_image:python:3.12-slim build_args:PYTHON_VERSION=3.12-slim
context:timepoll fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:timepoll oci_labels:org.opencontai… (push) Successful in 44s
Build custom container images / build (map[base_image:php:8-fpm-alpine build_args:PHP_VERSION=8
context:php8-pgsql fingerprint_command:{ apk info -v | LC_ALL=C sort; find /usr/local/lib/php/extensions /usr/local/etc/php/conf.d -type f -exec sha256sum {} + | LC_ALL=C sort; }
name:ph… (push) Successful in 49s
Build custom container images / build (map[base_image:postgres:18 build_args:PG_VERSION=18
POSTGIS_VERSION=3
VCHORD_VERSION=0.5.3
context:postgres fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; find /usr/lib/postgresql -type f -exec sha256su… (push) Successful in 1m42s
Build custom container images / build (map[base_image:python:3 build_args:PYTHON_VERSION=3
context:python-tools fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:python-tools oci_labels:org.opencontainers.ima… (push) Successful in 54s
Build custom container images / build (map[base_image:python:3.12-slim build_args:PYTHON_VERSION=3.12-slim
context:linkki-tiedotus fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:linkki-tiedotus oci_labels:… (push) Successful in 29s
Build custom container images / build (map[base_image:python:3.12-slim build_args:PYTHON_VERSION=3.12-slim
context:timepoll fingerprint_command:{ dpkg-query -W -f='${binary:Package}=${Version}\n' | LC_ALL=C sort; pip freeze | LC_ALL=C sort; }
name:timepoll oci_labels:org.opencontai… (push) Successful in 44s
This commit is contained in:
@@ -3,8 +3,8 @@
|
||||
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.
|
||||
The images include extended database/runtime images and standalone self-hosted
|
||||
applications. Each image has its own build context and documentation.
|
||||
|
||||
## Images
|
||||
|
||||
@@ -14,6 +14,7 @@ a few commonly useful database/runtime extensions.
|
||||
| `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/python-tools:3` | Python 3 task runner with ExifTool and a web control panel for mounted task scripts. |
|
||||
| `git.ajpanton.se/ajp_anton/linkki-tiedotus:1` | Web editor and scheduler for multilingual Telegram channel broadcasts. |
|
||||
| `git.ajpanton.se/ajp_anton/timepoll:1` | Timezone-aware availability polls with a live voting grid. |
|
||||
|
||||
## Included Components
|
||||
|
||||
@@ -119,6 +120,19 @@ Included application:
|
||||
The image contains no configuration or broadcast data. Mount `/data` from a
|
||||
persistent host directory and create its configuration from `linkki-tiedotus/config-examples/`.
|
||||
|
||||
### `timepoll`
|
||||
|
||||
Base image: `python:3.12-slim`, following Python 3.12 patch releases.
|
||||
|
||||
- Standalone FastAPI application with SQLite persistence and live browser updates.
|
||||
- UTC-based yes/maybe voting, IANA timezones, optional blackouts, and private
|
||||
poll administration links. No accounts required.
|
||||
- FastAPI and Uvicorn follow releases below version 1; `tzdata` follows available
|
||||
releases. Lucide browser icons are bundled at version 0.468.0.
|
||||
- Persistent data is stored in `/data`; the application listens on port `8080`.
|
||||
|
||||
See [Timepoll's README](timepoll/README.md) for setup, voting rules and testing.
|
||||
|
||||
## Tags
|
||||
|
||||
Moving deployment tags:
|
||||
@@ -127,6 +141,7 @@ Moving deployment tags:
|
||||
- `git.ajpanton.se/ajp_anton/php8-pgsql:8`
|
||||
- `git.ajpanton.se/ajp_anton/python-tools:3`
|
||||
- `git.ajpanton.se/ajp_anton/linkki-tiedotus:1`
|
||||
- `git.ajpanton.se/ajp_anton/timepoll:1`
|
||||
|
||||
Descriptive tags:
|
||||
|
||||
@@ -139,6 +154,7 @@ Convenience tags:
|
||||
- `git.ajpanton.se/ajp_anton/php8-pgsql:latest`
|
||||
- `git.ajpanton.se/ajp_anton/python-tools:latest`
|
||||
- `git.ajpanton.se/ajp_anton/linkki-tiedotus:latest`
|
||||
- `git.ajpanton.se/ajp_anton/timepoll:latest`
|
||||
|
||||
Tags are mutable. A weekly candidate build only repoints a deployment tag when
|
||||
its content fingerprint changed: base image, build context, build arguments,
|
||||
|
||||
Reference in New Issue
Block a user