New paid-tier per-customer image built on litespeedtech/openlitespeed:1.8.4-lsphpNN.
Matrix: 8.1-8.5. Native LSAPI suexec to customer uid, server-level LSCache,
all WP/WooCommerce extensions (memcached, redis, imagick, mbstring, etc.) baked in.
Files:
- Dockerfile.litespeed (FROM prebuilt LiteSpeed base, layers wp-cli/composer/mariadb)
- configs/litespeed/{httpd_config,site-template,lsphp-overrides}.tpl
- scripts/{entrypoint,create-vhost,detect-memory}-litespeed.sh + install-lscache-wp.sh
CI: new Build-LiteSpeed-Images matrix job. OLS_VERSION pinned to 1.8.4 (only
release with prebuilt images for all 5 PHP versions on Docker Hub).
Spec: whp/docs/superpowers/specs/2026-06-01-cac-litespeed-design.md
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
147 lines
4.5 KiB
YAML
147 lines
4.5 KiB
YAML
name: Cloud Apache Container
|
|
run-name: ${{ gitea.actor }} pushed a change to trunk
|
|
on:
|
|
push:
|
|
branches:
|
|
- trunk
|
|
|
|
jobs:
|
|
Build-and-Push:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
phpver: [74, 80, 81, 82, 83, 84, 85]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to Gitea
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: repo.anhonesthost.net
|
|
username: ${{ secrets.CI_USER }}
|
|
password: ${{ secrets.CI_TOKEN }}
|
|
|
|
- name: Build and Push Image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
platforms: linux/amd64
|
|
push: true
|
|
build-args: |
|
|
PHPVER=${{ matrix.phpver }}
|
|
tags: |
|
|
repo.anhonesthost.net/cloud-hosting-platform/cac:php${{ matrix.phpver }}
|
|
${{ matrix.phpver == '85' && 'repo.anhonesthost.net/cloud-hosting-platform/cac:latest' || '' }}
|
|
|
|
Build-FPM-Images:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
phpver: [74, 80, 81, 82, 83, 84, 85]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to Gitea
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: repo.anhonesthost.net
|
|
username: ${{ secrets.CI_USER }}
|
|
password: ${{ secrets.CI_TOKEN }}
|
|
|
|
- name: Build and Push FPM Image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ./Dockerfile.fpm
|
|
platforms: linux/amd64
|
|
push: true
|
|
build-args: |
|
|
PHPVER=${{ matrix.phpver }}
|
|
tags: |
|
|
repo.anhonesthost.net/cloud-hosting-platform/cac-fpm:php${{ matrix.phpver }}
|
|
${{ matrix.phpver == '85' && 'repo.anhonesthost.net/cloud-hosting-platform/cac-fpm:latest' || '' }}
|
|
|
|
Build-LiteSpeed-Images:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
# PHP 7.4/8.0 deliberately excluded — the LiteSpeed prebuilt base
|
|
# images stop at older OLS releases for those PHP versions, and the
|
|
# cac-litespeed tier is a paid premium offering: 8.1+ is the
|
|
# modernization story we're selling.
|
|
phpver: [81, 82, 83, 84, 85]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to Gitea
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: repo.anhonesthost.net
|
|
username: ${{ secrets.CI_USER }}
|
|
password: ${{ secrets.CI_TOKEN }}
|
|
|
|
- name: Build and Push LiteSpeed Image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ./Dockerfile.litespeed
|
|
platforms: linux/amd64
|
|
push: true
|
|
build-args: |
|
|
PHPVER=${{ matrix.phpver }}
|
|
OLS_VERSION=1.8.4
|
|
# OLS_VERSION pinned to 1.8.4 — only release with prebuilt images
|
|
# for every PHP version we ship (1.8.5 and 1.9.0 don't have an
|
|
# lsphp81 variant on Docker Hub). Bump alongside a local rebuild
|
|
# test when LiteSpeed publishes lsphp81 on a newer OLS release.
|
|
# See spec: docs/superpowers/specs/2026-06-01-cac-litespeed-design.md
|
|
tags: |
|
|
repo.anhonesthost.net/cloud-hosting-platform/cac-litespeed:php${{ matrix.phpver }}
|
|
${{ matrix.phpver == '85' && 'repo.anhonesthost.net/cloud-hosting-platform/cac-litespeed:latest' || '' }}
|
|
|
|
Build-Shared-httpd:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to Gitea
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: repo.anhonesthost.net
|
|
username: ${{ secrets.CI_USER }}
|
|
password: ${{ secrets.CI_TOKEN }}
|
|
|
|
- name: Build and Push Shared httpd Image
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
file: ./Dockerfile.shared-httpd
|
|
platforms: linux/amd64
|
|
push: true
|
|
tags: |
|
|
repo.anhonesthost.net/cloud-hosting-platform/shared-httpd:latest
|