Português
Começar

← Todos os templates · Sites e lojas

Faça deploy de Joomla em um clique

O CMS de código aberto para sites, com vários idiomas, níveis de acesso e milhares de extensões

Uma alternativa auto-hospedada para Wix e Squarespace.

O que é Joomla?

O Joomla é um sistema de gerenciamento de conteúdo gratuito e de código aberto para sites de todo tipo, das páginas de um clube ao site de uma empresa em vários idiomas. Os artigos ficam em categorias e aparecem por meio de menus e módulos, e o núcleo traz o template Cassiopeia, um gerenciador de mídia, contatos com seus formulários, tags, Busca Inteligente e URLs amigáveis para mecanismos de busca. Um site multilíngue não precisa de extensão: cada idioma ganha seu conteúdo e sua página inicial, e os artigos são associados às suas traduções. Grupos de usuários e níveis de acesso decidem quem vê e edita o quê, e o Diretório de Extensões do Joomla lista mais de 5.000 extensões.

Este template roda o Joomla 6 a partir da imagem oficial com o MariaDB e o instala na primeira inicialização a partir dos campos, então o instalador web nunca fica aberto para um estranho. Os arquivos do Joomla ficam em um volume e são atualizados no Administrador do site, e desde o Joomla 5.4 um site que o serviço de atualização do Joomla consegue acessar instala sozinho as versões menores e de correção. O porém: a atualização para uma nova versão principal é feita manualmente, depois que suas extensões a suportarem.

Hospedagem de Joomla no Pethost

  1. Você entra no Pethost com uma passkey, GitHub ou Google. Ainda não tem máquina? Você escolhe um plano, e o link espera até ela ficar pronta.
  2. Novo projeto abre em Joomla. Você preenche o que ele pede e clica em Criar projeto: E-mail, Usuário, Senha do administrador.
  3. Em um ou dois minutos Joomla está no ar no próprio endereço com HTTPS. Os segredos são gerados ao acaso, e os dados vão para o backup noturno.
  4. É um projeto como qualquer outro: você ou seu agente podem alterá-lo, fazer rollback ou restaurá-lo.

Perguntas sobre Joomla

O Joomla é gratuito?

Sim. O Joomla é gratuito e de código aberto sob a GNU General Public License, versão 2 ou posterior. Voluntários o desenvolvem, e a Open Source Matters, organização sem fins lucrativos, governa o projeto.

O Joomla ainda é mantido?

Sim. O Joomla 6.2 saiu em 13 de outubro de 2026, o Joomla 6 recebe correções de bugs até 17 de outubro de 2028 e correções de segurança até 16 de outubro de 2029, e o Joomla 6.3 está previsto para abril de 2027.

Como atualizo o Joomla?

Faça um backup antes, depois abra Sistema, escolha Joomla em Atualização e clique em Iniciar atualização, ou rode php cli/joomla.php core:update no shell do serviço joomla. Com as atualizações automáticas, que vêm ativadas num site novo que o serviço de atualização do Joomla consegue acessar, ele instala sozinho as versões menores e de correção.

Como faço um site multilíngue no Joomla?

Só com o núcleo: instale os idiomas, publique um idioma de conteúdo para cada um, ative o plugin Filtro de Idioma, crie um item de menu de página inicial por idioma e associe cada artigo às traduções dele na aba Associações.

Por que o Joomla exige uma senha de 12 caracteres?

Um site Joomla novo pede senhas de pelo menos 12 caracteres, inclusive a do Super Usuário. Este template passa a sua senha de administrador ao instalador do Joomla, que recusa uma mais curta: o site então só inicia quando o valor de ADMIN_PASSWORD no .env for mais longo.

De quanta memória e disco Joomla precisa?

Joomla é leve: cerca de 170 MB de memória com o MariaDB, e o site cresce com as imagens e os arquivos que você envia. No Pethost, o plano Starter basta, com espaço para outros apps ao lado.

Arquivo Docker Compose de Joomla

O template é este compose.yaml e as variáveis gravadas no .env do projeto quando ele é criado. O Pethost roda o arquivo exatamente como está escrito.

Containers: joomla (joomla:6-apache), db (mariadb:11.8).

Volumes, no backup noturno: 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:

Mais em Sites e lojas