Back-End

16 jun, 2016

Como colocar o Mezzanine CMS dentro da Jelastic Cloud – Parte 01

Publicidade

Neste artigo dividido em duas parte, veja como por o Mezzanine CMS na Jelastic Cloud.

***

Mezzanine CMS (Content Management System) é uma solução poderosa e fácil de usar para gerenciamento de conteúdo, que é construído em cima do Django, framework de desenvolvimento web baseado em Python. Essa plataforma open source com licença BSD é gratuita e facilmente personalizável. A funcionalidade CMS mais necessária e amplamente utilizada é fornecida por padrão, para que ele possa cobrir a maioria das necessidades comuns. Ao mesmo tempo, existe um número enorme de extensões de terceiros, widgets, módulos, temas etc., que podem ser utilizados para ampliar as possibilidades do Mezzanine.

Ambos desenvolvedores e gerentes de conteúdo podem ficar satisfeitos com as vantagens dessa plataforma como:

  • editor WYSIWYG com página de ordenação Drag-and-Drop e edição de conteúdo visual
  • publicação programada
  • quantidade enorme de temas prontos para usar
  • API rica
  • internacionalização Django out-of-the-box, Twitter Bootstrap, Disqus, filtro de spam Akismet, feed do Twitter e suporte do Google Analytics, bem como integração com redes sociais, motores de busca, funcionalidade SEO e enorme quantidade de módulos

Então, hoje nós vamos considerar essa aplicação pode ser facilmente hospedada no Jelastic PaaS&CaaS – a instrução passo a passo abaixo passará pelo processo de implantação do Mezzanine CMS dentro do Jelastic Cloud. (?)

Criar ambiente Python

Para começar, você precisa criar um ambiente com a aplicação apropriada e servidor DB. No nosso caso, o servidor Apache Python é necessário (com a recomendação da versão Python 2.7).

1 – Para criar tal ambiente, faça o login no seu painel de controle e clique no botão New enviroment.

jelastic-1

2 – Alterne para a aba Python. Aqui, com o servidor de aplicação apropriado já escolhido, você precisa declarar a versão adequada do Python. Em seguida, defina a região necessária para o ambiente (no caso de se utilizar a nuvem de multi-região) e ajuste o nome de domínio.

jelastic-2

Dicas:

  • Jelastic fornece tanto as versões 2 (2.7) e 3 (3.3, 3.4, 3.5) do Python; mas a 2.7 é a mais adequada para a implantação do Mezzanine CMS (embora Python 3 seja suportado por esse aplicativo também). Para saber os detalhes sobre possíveis problemas de compatibilidade, por favor leia a documentação oficial na comunidade Mezzanine CMS.
  • No caso de você estiver fazendo um deploy de um aplicativo grande e muito visitado, faz sentido adicionar um node DB separado ao ambiente; caso contrário, você pode usar o banco de dados SQLite padrão, localizado dentro do container do servidor de aplicação – ambas as opções serão descritas mais abaixo.

Finalmente, clique em Criar no canto inferior direito.

3 – Apenas em um minuto seu ambiente aparecerá no dashboard.

jelastic-3

Agora, você está pronto para avançar para a implantação real da aplicação Mezzanine CMS.

Construir e implantar o Mezzanine CMS

1 – Para instalar o Mezzanine CMS a partir do zero, você precisa acessar o servidor de aplicação por meio do Jelastic SSH Gateway primeiro.

Dica: Se você não tiver realizado essas operações antes, você precisa:

No entanto, caso você não seja capaz de se conectar à sua conta via SSH (por exemplo, devido às suas restrições no provedor de hospedagem), você pode prosseguir com a implantação de um arquivo previamente preparado do Mezzanine 4.1, fornecido no final deste artigo.

2 – Depois de entrar no servidor Apache Python por meio do terminal, você vai estar no diretório home do usuário Jelastic. Agora, para executar a aplicação web Python, o ambiente virtual isolado precisa ser criado.

Dica: Um ambiente virtual é a ferramenta para manter as dependências, que são exigidas por diferentes projetos Python, em locais separados. Além disso, ele dá a capacidade de instalar os pacotes necessários sem ter os privilégios de administrador.

Assim, a fim de criar um ambiente, basta executar o comando a seguir em seu console:

virtualenv virtenv

3 – Para ser utilizado, o ambiente virtual recém-criado necessita ser ativado por meio da execução do comando a seguir:

source virtenv/bin/activate

4 – Agora, o instalador Mezzanine CMS pode ser baixado com a ajuda do gerenciador de pacotes Python (pip):

pip install mezzanine

jelastic-4

Espere alguns minutos antes de essa operação ser concluída.

5 – Como vamos instalar a nossa aplicação no contexto ROOT, a pasta ROOT existente com o aplicativo padrão deve ser removida anteriormente:

rm -rf ROOT

Depois disso, você pode executar o instalador:

mezzanine-project ROOT

A próxima ação necessária é a criação do schema de banco de dados do aplicativo.

Configurando o banco de dados

Mezzanine CMS, como todas as aplicações baseadas em Django, suporta diferentes bancos de dados SQL. Você pode escolher um de acordo com suas finalidades e preferências, então, nas instruções abaixo, vamos revelar como configurar nosso aplicativo para trabalhar com:

  • banco de dados SQLite embutido
  • um servidor SQL separado (ou baseado em MySQL ou PostgreSQL)

Para o SQLite DB incorporado

Sendo rápido, simples e leve, o SQLite representa uma ótima solução para fins de desenvolvimento e teste.

Dica: Para ambientes de produção, é recomendado usar node PostgreSQL ou algo baseado em MySQL, já que eles fornecem um nível suficiente de escalabilidade e segurança para os casos da vida real (a instrução detalhada para esses servidores é fornecida mais à frente no artigo)

1 – As configurações de conexão do banco de dados podem ser vistas no arquivo local_settings.py dentro da pasta ~/ROOT/ROOT. Aqui, você encontrará a seção de configuração de banco de dados dedicado com os parâmetros que são indicados para o uso do SQLite DB por padrão, então você pode deixar isso inalterado nesse caso.

jelastic-5

2 – Depois de revisar as configurações, execute a seguinte linha de dentro do diretório ~/ROOT (ou seja, um nível acima da localização do script local_settings.py), a fim de criar um novo banco de dados SQLite:

python manage.py createdb --noinput

Dica: Nesta etapa, a conta de administração padrão (com admin/default como credenciais), o registro do site e algumas páginas de demonstração são criadas. Se você quiser especificar os dados para essas opções manualmente, basta executar o comando acima, sem a opção ‘-noinput’.

jelastic-6

O banco de dados em si vai ser armazenado em ~/ROOT/dev.db.

3 – Após o banco de dados ser criado, você pode avançar para a seção Configuring Apache deste artigo um pouco abaixo.

***

Tetiana Markova faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: http://blog.jelastic.com/2016/05/05/how-to-get-mezzanine-cms-inside-jelastic-cloud/