mirror of
https://github.com/Dokploy/templates.git
synced 2026-07-08 07:25:23 +02:00
feat: add Joomla template (#891)
* feat: add Joomla template * docs: clarify Joomla admin credential fields --------- Co-authored-by: Mauricio Siu <siumauricio@icloud.com>
This commit is contained in:
committed by
GitHub
parent
1e99d46afe
commit
8a52825167
44
blueprints/joomla/docker-compose.yml
Normal file
44
blueprints/joomla/docker-compose.yml
Normal file
@@ -0,0 +1,44 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
joomla:
|
||||
image: joomla:6.1.0-apache
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
joomla-db:
|
||||
condition: service_healthy
|
||||
expose:
|
||||
- "80"
|
||||
environment:
|
||||
JOOMLA_DB_HOST: joomla-db
|
||||
JOOMLA_DB_USER: ${JOOMLA_DB_USER}
|
||||
JOOMLA_DB_PASSWORD: ${JOOMLA_DB_PASSWORD}
|
||||
JOOMLA_DB_NAME: ${JOOMLA_DB_NAME}
|
||||
JOOMLA_SITE_NAME: ${JOOMLA_SITE_NAME}
|
||||
JOOMLA_ADMIN_USER: ${JOOMLA_ADMIN_USER}
|
||||
JOOMLA_ADMIN_USERNAME: ${JOOMLA_ADMIN_USERNAME}
|
||||
JOOMLA_ADMIN_PASSWORD: ${JOOMLA_ADMIN_PASSWORD}
|
||||
JOOMLA_ADMIN_EMAIL: ${JOOMLA_ADMIN_EMAIL}
|
||||
volumes:
|
||||
- joomla-data:/var/www/html
|
||||
|
||||
joomla-db:
|
||||
image: mariadb:11.4
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MARIADB_DATABASE: ${JOOMLA_DB_NAME}
|
||||
MARIADB_USER: ${JOOMLA_DB_USER}
|
||||
MARIADB_PASSWORD: ${JOOMLA_DB_PASSWORD}
|
||||
MARIADB_RANDOM_ROOT_PASSWORD: "1"
|
||||
volumes:
|
||||
- joomla-db:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "healthcheck.sh --connect --innodb_initialized"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_period: 30s
|
||||
|
||||
volumes:
|
||||
joomla-data:
|
||||
joomla-db:
|
||||
5
blueprints/joomla/joomla.svg
Normal file
5
blueprints/joomla/joomla.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 128 128" role="img" aria-label="Joomla">
|
||||
<rect width="128" height="128" rx="24" fill="#1a3867"/>
|
||||
<path fill="#fff" d="M61 29a10 10 0 0 1 16-8l10 10-9 9-9-9a3 3 0 0 0-5 2v16H50V33a17 17 0 0 1 11-4Zm38 32a10 10 0 0 1 8 16L97 87l-9-9 9-9a3 3 0 0 0-2-5H79V50h16a17 17 0 0 1 4 11ZM67 99a10 10 0 0 1-16 8L41 97l9-9 9 9a3 3 0 0 0 5-2V79h14v16a17 17 0 0 1-11 4ZM29 67a10 10 0 0 1-8-16l10-10 9 9-9 9a3 3 0 0 0 2 5h16v14H33a17 17 0 0 1-4-11Z"/>
|
||||
<rect x="51" y="51" width="26" height="26" rx="6" fill="#f9a03f"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 568 B |
51
blueprints/joomla/template.toml
Normal file
51
blueprints/joomla/template.toml
Normal file
@@ -0,0 +1,51 @@
|
||||
[variables]
|
||||
main_domain = "${domain}"
|
||||
site_name = "Joomla"
|
||||
admin_name = "Joomla Administrator"
|
||||
admin_username = "${username}"
|
||||
admin_password = "${password:24}"
|
||||
admin_email = "${email}"
|
||||
db_user = "joomla"
|
||||
db_password = "${password:32}"
|
||||
db_name = "joomla"
|
||||
|
||||
[[config.domains]]
|
||||
serviceName = "joomla"
|
||||
port = 80
|
||||
host = "${main_domain}"
|
||||
path = "/"
|
||||
|
||||
[[config.mounts]]
|
||||
filePath = "README.md"
|
||||
content = """# Joomla
|
||||
|
||||
This template deploys Joomla CMS with MariaDB using the official Joomla Apache image.
|
||||
|
||||
## Access
|
||||
|
||||
- URL: `http://${main_domain}`
|
||||
- Administrator username: the configured `admin_username` value
|
||||
- Administrator password: the generated `admin_password` value
|
||||
- Administrator email: the configured `admin_email` value
|
||||
|
||||
The template uses Joomla's auto-deployment environment variables so the site and administrator account are initialized on first start.
|
||||
|
||||
## Storage
|
||||
|
||||
The template creates persistent volumes for:
|
||||
|
||||
- Joomla application files at `/var/www/html`
|
||||
- MariaDB data at `/var/lib/mysql`
|
||||
|
||||
Back up both volumes together before upgrades or migrations.
|
||||
"""
|
||||
|
||||
[config.env]
|
||||
JOOMLA_SITE_NAME = "${site_name}"
|
||||
JOOMLA_ADMIN_USER = "${admin_name}"
|
||||
JOOMLA_ADMIN_USERNAME = "${admin_username}"
|
||||
JOOMLA_ADMIN_PASSWORD = "${admin_password}"
|
||||
JOOMLA_ADMIN_EMAIL = "${admin_email}"
|
||||
JOOMLA_DB_USER = "${db_user}"
|
||||
JOOMLA_DB_PASSWORD = "${db_password}"
|
||||
JOOMLA_DB_NAME = "${db_name}"
|
||||
18
meta.json
18
meta.json
@@ -3588,6 +3588,24 @@
|
||||
"open-source"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "joomla",
|
||||
"name": "Joomla",
|
||||
"version": "6.1.0-apache",
|
||||
"description": "Joomla is a flexible open-source content management system for building websites, portals, and online applications.",
|
||||
"logo": "joomla.svg",
|
||||
"links": {
|
||||
"github": "https://github.com/joomla/joomla-cms",
|
||||
"website": "https://www.joomla.org/",
|
||||
"docs": "https://manual.joomla.org/"
|
||||
},
|
||||
"tags": [
|
||||
"cms",
|
||||
"website",
|
||||
"php",
|
||||
"mariadb"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "joplin-server",
|
||||
"name": "Joplin Server",
|
||||
|
||||
Reference in New Issue
Block a user