
library/joomlaJoomla是一个免费开源的内容管理系统(CMS),用于发布网页内容。它基于模型-视图-控制器(MVC)Web应用框架构建,可独立于CMS使用。Joomla采用PHP编写,使用面向对象编程(OOP)技术和软件设计模式,数据存储支持MySQL、MS SQL或PostgreSQL数据库。该镜像提供了Joomla的容器化部署方案,简化了安装和配置流程。
维护者:Joomla!
获取帮助:Docker社区Slack、Server Fault、Unix & Linux 或 Stack Overflow
Apache版本:6.0.0, 6.0, 6, latest, 6.0.0-apache, 6.0-apache, 6-apache, 6.0.0-php8.3, 6.0-php8.3, 6-php8.3, 6.0.0-php8.3-apache, 6.0-php8.3-apache, 6-php8.3-apache, php8.3, php8.3-apache
Dockerfile
FPM版本:6.0.0-php8.3-fpm, 6.0-php8.3-fpm, 6-php8.3-fpm, php8.3-fpm
Dockerfile
FPM-Alpine版本:6.0.0-php8.3-fpm-alpine, 6.0-php8.3-fpm-alpine, 6-php8.3-fpm-alpine, php8.3-fpm-alpine
Dockerfile
Apache版本(PHP 8.2):5.4.0-php8.2-apache, 5.4-php8.2-apache, 5-php8.2-apache
Dockerfile
Apache版本(PHP 8.3):5.4.0, 5.4, 5, 5.4.0-apache, 5.4-apache, 5-apache, 5.4.0-php8.3, 5.4-php8.3, 5-php8.3, 5.4.0-php8.3-apache, 5.4-php8.3-apache, 5-php8.3-apache
Dockerfile
FPM版本(PHP 8.2):5.4.0-php8.2-fpm, 5.4-php8.2-fpm, 5-php8.2-fpm
Dockerfile
FPM版本(PHP 8.3):5.4.0-php8.3-fpm, 5.4-php8.3-fpm, 5-php8.3-fpm
Dockerfile
FPM-Alpine版本(PHP 8.2):5.4.0-php8.2-fpm-alpine, 5.4-php8.2-fpm-alpine, 5-php8.2-fpm-alpine
Dockerfile
FPM-Alpine版本(PHP 8.3):5.4.0-php8.3-fpm-alpine, 5.4-php8.3-fpm-alpine, 5-php8.3-fpm-alpine
Dockerfile
Joomla适用于各类Web内容发布场景,包括但不限于:
console$ docker run --name some-joomla --network some-network -d joomla
console$ docker run --name some-joomla --network some-network -p 8080:80 -d joomla
启动后通过 http://localhost:8080 或 [***] 访问。
console$ docker run --name some-joomla --network some-network -e JOOMLA_DB_HOST=10.1.2.3:3306 \ -e JOOMLA_DB_USER=dbuser -e JOOMLA_DB_PASSWORD=dbpass -d joomla
以下是包含Joomla和MySQL的完整部署示例:
yamlservices: joomla: image: joomla restart: always ports: - 8080:80 environment: # 数据库配置 JOOMLA_DB_HOST: db JOOMLA_DB_USER: joomla JOOMLA_DB_PASSWORD: examplepass JOOMLA_DB_NAME: joomla_db # 自动部署配置 JOOMLA_SITE_NAME: Joomla站点 JOOMLA_ADMIN_USER: 管理员名称 JOOMLA_ADMIN_USERNAME: admin JOOMLA_ADMIN_PASSWORD: securepassword JOOMLA_ADMIN_*** *** volumes: - joomla_data:/var/www/html # 持久化Joomla数据 networks: - joomla_network db: image: mysql:8.0 restart: always environment: MYSQL_DATABASE: joomla_db MYSQL_USER: joomla MYSQL_PASSWORD: examplepass MYSQL_RANDOM_ROOT_PASSWORD: '1' # 自动生成root密码 volumes: - db_data:/var/lib/mysql # 持久化数据库数据 networks: - joomla_network volumes: joomla_data: db_data: networks: joomla_network:
启动命令:
console$ docker compose up -d
| 环境变量 | 默认值 | 说明 |
|---|---|---|
JOOMLA_DB_HOST | 链接的MySQL容器IP和端口 | 数据库主机地址(格式:host:port) |
JOOMLA_DB_USER | root | 数据库用户名 |
JOOMLA_DB_PASSWORD | 链接MySQL容器的MYSQL_ROOT_PASSWORD值 | 数据库密码 |
JOOMLA_DB_PASSWORD_FILE | 无 | 存储数据库密码的文件路径 |
JOOMLA_DB_NAME | joomla | 数据库名称(不存在时会自动创建) |
JOOMLA_DB_TYPE | mysqli | 数据库类型(可选:mysqli、pgsql) |
| 环境变量 | 说明 |
|---|---|
JOOMLA_SITE_NAME | 网站名称 |
JOOMLA_ADMIN_USER | 管理员全名 |
JOOMLA_ADMIN_USERNAME | 管理员登录用户名 |
JOOMLA_ADMIN_PASSWORD | 管理员登录密码 |
JOOMLA_ADMIN_EMAIL | 管理员***地址 |
JOOMLA_EXTENSIONS_URLS | 扩展安装URL列表(分号分隔) |
JOOMLA_EXTENSIONS_PATHS | 扩展安装文件路径列表(分号分隔) |
JOOMLA_SMTP_HOST | SMTP邮件服务器地址 |
JOOMLA_SMTP_HOST_PORT | SMTP邮件服务器端口 |
基础镜像不含额外PHP扩展,如需添加,可基于此镜像构建自定义镜像。例如:
dockerfileFROM joomla:6.0-php8.3-apache # 安装PHP扩展(示例:gd和mysqli) RUN docker-php-ext-install gd mysqli \ && docker-php-ext-enable gd mysqli
joomla:<version>(标准版本)默认镜像,基于Debian系统,包含Apache或FPM服务,适合大多数场景。如需完整的系统工具和库支持,建议使用此版本。
joomla:<version>-alpine(Alpine版本)基于Alpine Linux构建,镜像体积更小(约5MB基础镜像),适合对镜像大小有严格要求的场景。注意:Alpine使用musl libc而非glibc,部分依赖glibc的软件可能存在兼容性问题。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务