---
title: "Joomla: Docker Compose и хостинг в один клик"
description: "Self-hosted Joomla — open source CMS для сайтов со встроенной мультиязычностью и уровнями доступа. Joomla 6 с MariaDB в один клик."
---

[← Все шаблоны](https://pethost.dev/ru/templates/) · [Сайты и магазины](https://pethost.dev/ru/templates/websites/)

# Задеплойте Joomla в один клик

CMS с открытым кодом для сайтов: несколько языков, уровни доступа и тысячи расширений

Альтернатива Wix и Squarespace на вашей машине.

[Задеплоить на Pethost](https://console.pethost.dev/?template=joomla)

## Что такое Joomla?

Joomla — бесплатная система управления контентом с открытым кодом для любых сайтов, от страничек клуба до сайта компании на нескольких языках. Материалы раскладываются по категориям и выводятся через меню и модули, а в ядре есть шаблон Cassiopeia, медиа-менеджер, контакты с их формами, теги, умный поиск и адреса, удобные для поисковиков (ЧПУ). Многоязычному сайту не нужны расширения: у каждого языка свой контент и своя главная страница, а материалы связываются со своими переводами. Группы пользователей и уровни доступа определяют, кто что видит и редактирует, а в Каталоге расширений Joomla (Joomla Extensions Directory) больше 5000 расширений.

Этот шаблон запускает Joomla 6 из официального образа с MariaDB и устанавливает ее при первом запуске по данным из полей, так что веб-установщик никогда не бывает открыт для посторонних. Файлы Joomla лежат в томе и обновляются из панели управления, а начиная с Joomla 5.4 сайт, до которого может достучаться сервис обновлений Joomla, сам ставит минорные и патч-релизы. Подвох: на новую мажорную версию переходят вручную, когда ее поддержат ваши расширения.

## Хостинг Joomla на Pethost

1. Вы входите в Pethost — с passkey, через GitHub или Google. Машины еще нет? Вы выбираете тариф, и ссылка ждет, пока машина не будет готова.
2. Окно «Новый проект» открывается на приложении Joomla. Вы заполняете то, что оно просит, и нажимаете «Создать проект»: **Электронная почта**, **Имя пользователя**, **Пароль администратора**.
3. Через минуту-две Joomla работает по своему адресу с HTTPS. Секреты создаются случайно, а данные попадают в ночной бэкап.
4. Это проект как любой другой: вы или ваш агент можете его изменить, откатить или восстановить.

## Вопросы про Joomla

**Joomla бесплатная?**

Да. Joomla — бесплатное ПО с открытым кодом под лицензией GNU General Public License версии 2 или новее. Ее делают волонтеры, а управляет проектом некоммерческая организация Open Source Matters.

**Joomla все еще поддерживается?**

Да. Joomla 6.2 вышла 13 октября 2026 года, Joomla 6 получает исправления ошибок до 17 октября 2028 года и исправления безопасности до 16 октября 2029 года, а Joomla 6.3 запланирована на апрель 2027 года.

**Как обновить Joomla?**

Сначала сделайте бэкап, затем откройте «Система», выберите «Joomla» в блоке «Обновление» и нажмите «Обновить» или выполните php cli/joomla.php core:update в шелле сервиса joomla. Если включено «Автообновление» — а у нового сайта, до которого может достучаться сервис обновлений Joomla, оно включено, — Joomla сама ставит минорные и патч-релизы.

**Как сделать многоязычный сайт на Joomla?**

Хватит одного ядра: установите языки, опубликуйте для каждого язык контента, включите плагин «Система - Фильтр языка», создайте для каждого языка пункт меню главной страницы и свяжите каждый материал с его переводами на вкладке «Связи».

**Почему Joomla требует пароль из 12 символов?**

Новый сайт на Joomla требует пароли не короче 12 символов, в том числе у суперпользователя. Этот шаблон передает ваш пароль администратора установщику Joomla, а тот отклоняет более короткий: тогда сайт запустится, как только ADMIN_PASSWORD в .env станет длиннее.

**Сколько памяти и диска нужно Joomla?**

Joomla: небольшие требования — около 170 MB памяти вместе с MariaDB, а сайт растет вместе с изображениями и файлами, которые вы загружаете. На Pethost ему хватит тарифа Starter, и рядом останется место для других приложений.

## Joomla: файл Docker Compose

Шаблон — это этот compose.yaml и переменные, которые пишутся в .env проекта при его создании. Pethost запускает файл так, как он написан.

**Контейнеры:** joomla (joomla:6-apache), db (mariadb:11.8).

**Тома, в ночном бэкапе:** joomla, db.

```
services:
  joomla:
    image: joomla:6-apache
    restart: unless-stopped
    depends_on:
      db:
        condition: service_healthy
    environment:
      JOOMLA_DB_HOST: db
      JOOMLA_DB_NAME: joomla
      JOOMLA_DB_USER: joomla
      JOOMLA_DB_PASSWORD: ${DB_PASSWORD}
      SITE_NAME: ${HOST}
      ADMIN_USERNAME: ${ADMIN_USERNAME}
      ADMIN_EMAIL: ${ADMIN_EMAIL}
      ADMIN_PASSWORD: ${ADMIN_PASSWORD}
    # A new Joomla opens its web installer to whoever comes first. So the image's entrypoint is
    # run first only to copy Joomla into the volume and make the database, Joomla's own CLI
    # installer then makes the site and its Super User from the fields, and Apache starts only
    # once the site is installed: a refusal (Joomla takes a password of 12 characters at least)
    # stops the start, says why in the logs, and is tried again at the next.
    #
    # PHP's own upload limit is 2 MB, too little for a photo, and the image has no variable for it.
    entrypoint:
      - sh
      - -c
      - |
        set -e
        printf 'upload_max_filesize = 64M\npost_max_size = 64M\n' > /usr/local/etc/php/conf.d/uploads.ini
        /entrypoint.sh apache2 -v > /dev/null
        if [ -e installation/joomla.php ]; then
          php installation/joomla.php install --no-interaction \
            --site-name="$$SITE_NAME" \
            --admin-user="$$ADMIN_USERNAME" \
            --admin-username="$$ADMIN_USERNAME" \
            --admin-password="$$ADMIN_PASSWORD" \
            --admin-email="$$ADMIN_EMAIL" \
            --db-type=mysqli \
            --db-host="$$JOOMLA_DB_HOST" \
            --db-user="$$JOOMLA_DB_USER" \
            --db-pass="$$JOOMLA_DB_PASSWORD" \
            --db-name="$$JOOMLA_DB_NAME" \
            --db-prefix=jos_ \
            --db-encryption=0
          rm -rf installation
          chown -R www-data:www-data .
          chmod 444 configuration.php
        fi
        exec /entrypoint.sh apache2-foreground
    volumes:
      - joomla:/var/www/html

  db:
    image: mariadb:11.8
    restart: unless-stopped
    environment:
      MARIADB_DATABASE: joomla
      MARIADB_USER: joomla
      MARIADB_PASSWORD: ${DB_PASSWORD}
      MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
    volumes:
      - db:/var/lib/mysql
    healthcheck:
      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
      interval: 5s
      timeout: 5s
      retries: 20
      start_period: 30s

volumes:
  joomla:
  db:
```

[compose.yaml](https://pethost.dev/templates/joomla/compose.yaml)[Открыть на GitHub](https://github.com/pethost-dev/templates/tree/main/joomla)

## [Еще в категории «Сайты и магазины»](https://pethost.dev/ru/templates/websites/)

- [**WordPress**Конструктор сайтов и блогов с темами и плагинами](https://pethost.dev/ru/templates/wordpress/)
- [**Ghost**Платформа для блогов и рассылок](https://pethost.dev/ru/templates/ghost/)
- [**Grav**CMS на файлах: быстрый сайт или блог с админкой и без базы данных](https://pethost.dev/ru/templates/grav/)
- [**Spree Commerce**Платформа электронной коммерции с открытым кодом: товары, заказы, платежи и headless API для любой витрины](https://pethost.dev/ru/templates/spree/)

Pethost · Stephan Gomer · NIP 1133096755

Pethost

- [Шаблоны](https://pethost.dev/ru/templates/)
- [О нас](https://pethost.dev/about/)
- [Документация](https://pethost.dev/docs/)
- [Блог](https://pethost.dev/ru/blog/)
- [API](https://pethost.dev/docs/api/)
- [CLI](https://pethost.dev/docs/cli/)
- [Плагин](https://github.com/pethost-dev/plugin)
- [Условия](https://pethost.dev/terms/)
- [Конфиденциальность](https://pethost.dev/privacy/)
- [Возвраты](https://pethost.dev/refunds/)
- [support@pethost.dev](mailto:support@pethost.dev)

Базы данных

- [Postgres](https://pethost.dev/ru/postgres/)

Сравнения

- [Coolify vs Dokploy vs CapRover vs Dokku](https://pethost.dev/ru/blog/coolify-vs-dokploy-vs-caprover-vs-dokku/)
- [Coolify Cloud vs Dokploy Cloud](https://pethost.dev/ru/blog/coolify-cloud-vs-dokploy-cloud/)
- [Цены Railway, Render и Fly.io](https://pethost.dev/ru/blog/railway-vs-render-vs-fly-io-pricing/)
- [Управляемый хостинг Docker Compose](https://pethost.dev/ru/blog/managed-docker-compose-hosting/)

Альтернативы

- [Альтернативы Railway](https://pethost.dev/ru/blog/railway-alternatives/)
- [Альтернативы Heroku](https://pethost.dev/ru/blog/heroku-alternatives/)
- [Альтернативы Dokploy](https://pethost.dev/ru/blog/dokploy-alternatives/)
- [Альтернативы Coolify](https://pethost.dev/ru/blog/coolify-alternatives/)
- [Альтернативы Render](https://pethost.dev/ru/blog/render-alternatives/)
- [Альтернативы Sliplane](https://pethost.dev/ru/blog/sliplane-alternatives/)
