mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-30 15:28:12 +02:00
Tasks: - Enable docker_compose_flush_handlers=true so services come up immediately. - Add DB readiness guard via maintenance/sql.php (SELECT 1). - Run maintenance/install.php on empty schema with robust changed_when/failed_when (merge stdout+stderr); keep secrets hidden. - Run maintenance/update.php for migrations with neutral changed_when unless work is done. - Make admin creation idempotent: tolerate 'already exists' and 'Account exists', keep async+no_log. Config changes: - Remove LocalSettings.php template and its host bind-mount from compose. - Drop MediaWiki settings path variables and META namespace variable (unused after switch). Result: First boot is fully automated (schema + admin), subsequent runs are cleanly idempotent. Ref: ChatGPT conversation (Aug 28, 2025, Europe/Berlin) — https://chatgpt.com/share/68b0d2e1-9bc0-800f-81a5-db03ce0b81e3.
19 lines
763 B
Django/Jinja
19 lines
763 B
Django/Jinja
{% include 'roles/docker-compose/templates/base.yml.j2' %}
|
|
application:
|
|
{% include 'roles/docker-container/templates/base.yml.j2' %}
|
|
container_name: "{{ MEDIAWIKI_CONTAINER }}"
|
|
image: "{{ MEDIAWIKI_IMAGE }}:{{ MEDIAWIKI_VERSION }}"
|
|
volumes:
|
|
- "data:/var/www/html/"
|
|
ports:
|
|
- "127.0.0.1:{{ ports.localhost.http[application_id] }}:{{ container_port }}"
|
|
{% include 'roles/docker-container/templates/healthcheck/curl.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/networks.yml.j2' %}
|
|
{% include 'roles/docker-container/templates/depends_on/dmbs_excl.yml.j2' %}
|
|
|
|
{% include 'roles/docker-compose/templates/volumes.yml.j2' %}
|
|
data:
|
|
name: {{ MEDIAWIKI_VOLUME }}
|
|
|
|
{% include 'roles/docker-compose/templates/networks.yml.j2' %}
|