Skip to content

Commit 8a52825

Browse files
feat: add Joomla template (#891)
* feat: add Joomla template * docs: clarify Joomla admin credential fields --------- Co-authored-by: Mauricio Siu <siumauricio@icloud.com>
1 parent 1e99d46 commit 8a52825

4 files changed

Lines changed: 118 additions & 0 deletions

File tree

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
version: "3.8"
2+
3+
services:
4+
joomla:
5+
image: joomla:6.1.0-apache
6+
restart: unless-stopped
7+
depends_on:
8+
joomla-db:
9+
condition: service_healthy
10+
expose:
11+
- "80"
12+
environment:
13+
JOOMLA_DB_HOST: joomla-db
14+
JOOMLA_DB_USER: ${JOOMLA_DB_USER}
15+
JOOMLA_DB_PASSWORD: ${JOOMLA_DB_PASSWORD}
16+
JOOMLA_DB_NAME: ${JOOMLA_DB_NAME}
17+
JOOMLA_SITE_NAME: ${JOOMLA_SITE_NAME}
18+
JOOMLA_ADMIN_USER: ${JOOMLA_ADMIN_USER}
19+
JOOMLA_ADMIN_USERNAME: ${JOOMLA_ADMIN_USERNAME}
20+
JOOMLA_ADMIN_PASSWORD: ${JOOMLA_ADMIN_PASSWORD}
21+
JOOMLA_ADMIN_EMAIL: ${JOOMLA_ADMIN_EMAIL}
22+
volumes:
23+
- joomla-data:/var/www/html
24+
25+
joomla-db:
26+
image: mariadb:11.4
27+
restart: unless-stopped
28+
environment:
29+
MARIADB_DATABASE: ${JOOMLA_DB_NAME}
30+
MARIADB_USER: ${JOOMLA_DB_USER}
31+
MARIADB_PASSWORD: ${JOOMLA_DB_PASSWORD}
32+
MARIADB_RANDOM_ROOT_PASSWORD: "1"
33+
volumes:
34+
- joomla-db:/var/lib/mysql
35+
healthcheck:
36+
test: ["CMD-SHELL", "healthcheck.sh --connect --innodb_initialized"]
37+
interval: 10s
38+
timeout: 5s
39+
retries: 5
40+
start_period: 30s
41+
42+
volumes:
43+
joomla-data:
44+
joomla-db:

‎blueprints/joomla/joomla.svg‎

Lines changed: 5 additions & 0 deletions
Loading

‎blueprints/joomla/template.toml‎

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
[variables]
2+
main_domain = "${domain}"
3+
site_name = "Joomla"
4+
admin_name = "Joomla Administrator"
5+
admin_username = "${username}"
6+
admin_password = "${password:24}"
7+
admin_email = "${email}"
8+
db_user = "joomla"
9+
db_password = "${password:32}"
10+
db_name = "joomla"
11+
12+
[[config.domains]]
13+
serviceName = "joomla"
14+
port = 80
15+
host = "${main_domain}"
16+
path = "/"
17+
18+
[[config.mounts]]
19+
filePath = "README.md"
20+
content = """# Joomla
21+
22+
This template deploys Joomla CMS with MariaDB using the official Joomla Apache image.
23+
24+
## Access
25+
26+
- URL: `http://${main_domain}`
27+
- Administrator username: the configured `admin_username` value
28+
- Administrator password: the generated `admin_password` value
29+
- Administrator email: the configured `admin_email` value
30+
31+
The template uses Joomla's auto-deployment environment variables so the site and administrator account are initialized on first start.
32+
33+
## Storage
34+
35+
The template creates persistent volumes for:
36+
37+
- Joomla application files at `/var/www/html`
38+
- MariaDB data at `/var/lib/mysql`
39+
40+
Back up both volumes together before upgrades or migrations.
41+
"""
42+
43+
[config.env]
44+
JOOMLA_SITE_NAME = "${site_name}"
45+
JOOMLA_ADMIN_USER = "${admin_name}"
46+
JOOMLA_ADMIN_USERNAME = "${admin_username}"
47+
JOOMLA_ADMIN_PASSWORD = "${admin_password}"
48+
JOOMLA_ADMIN_EMAIL = "${admin_email}"
49+
JOOMLA_DB_USER = "${db_user}"
50+
JOOMLA_DB_PASSWORD = "${db_password}"
51+
JOOMLA_DB_NAME = "${db_name}"

‎meta.json‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3588,6 +3588,24 @@
35883588
"open-source"
35893589
]
35903590
},
3591+
{
3592+
"id": "joomla",
3593+
"name": "Joomla",
3594+
"version": "6.1.0-apache",
3595+
"description": "Joomla is a flexible open-source content management system for building websites, portals, and online applications.",
3596+
"logo": "joomla.svg",
3597+
"links": {
3598+
"github": "https://github.com/joomla/joomla-cms",
3599+
"website": "https://www.joomla.org/",
3600+
"docs": "https://manual.joomla.org/"
3601+
},
3602+
"tags": [
3603+
"cms",
3604+
"website",
3605+
"php",
3606+
"mariadb"
3607+
]
3608+
},
35913609
{
35923610
"id": "joplin-server",
35933611
"name": "Joplin Server",

0 commit comments

Comments
 (0)