TurboGears - implantação
Para mudar de um ambiente de desenvolvimento para um ambiente de produção completo, o aplicativo precisa ser implantado em um servidor web real. Dependendo do que você tem, existem diferentes opções disponíveis para implantar um aplicativo da web TurboGears.
Apache com mod_wsgi
O mod_wsgi é um módulo Apache desenvolvido por Graham Dumpleton. Ele permite que programas WSGI sejam servidos usando o servidor web Apache.
Em primeiro lugar, instale o Apache 2.X para sua plataforma, se ainda não o fez. Depois de instalar o Apache, instale o mod_wsgi. Crie e ative o ambiente virtual Python no servidor e instale o TurboGears nele.
Instale seu aplicativo no diretor de aplicativos e, em seguida, crie um script chamado app.wsgi.
Configure a instalação do Apache da seguinte forma -
<VirtualHost *:80>
ServerName www.site1.com
WSGIProcessGroup www.site1.com
WSGIDaemonProcess www.site1.com user = <username>
group = www-data threads = 4 python-path = <pythonpath>
WSGIScriptAlias myapp/app.wsgi
#Serve static files directly without TurboGears
Alias /images
Alias /css
Alias /js
CustomLog
ErrorLog
</VirtualHost>
Reinicie o Apache
Tipo http://www.site1.com/ em um navegador para acessar o aplicativo.
TurboGears sob Circus e Chaussette
Circus é um gerenciador de processos e soquetes. Ele pode ser usado para monitorar e controlar processos e sockets. Quando emparelhado com o servidor Chaussette WSGI, ele pode se tornar uma ferramenta poderosa para implantar seu aplicativo e gerenciar qualquer processo relacionado que seus aplicativos precisem.
TurboGears - GoogleAppEngine
Instale o SDK do Google AppEngine para Python a partir do seguinte URL - https://cloud.google.coms
Instale o Google AppEngine em seu sistema. Em seguida, abra o console do Google Developer e faça login com sua Conta do Google -https://console.developers.google.com/start
Crie um novo projeto chamado mytgapp -
Usando o Google AppEngine Launcher, crie um novo aplicativo chamado mytgapp.
Os seguintes arquivos serão criados no diretório especificado -
- app.yaml
- favicon.ico
- index.yaml
- main.py
Por padrão, o aplicativo criado depende da estrutura Webapp2. Para remover essa dependência, edite o arquivo app.yaml e exclua a seguinte parte -
libraries:
- name: webapp2
version: "2.5.2"
Crie um ambiente virtual temporário em um diretório chamado mytgapp e instale o TurboGears. Crie um aplicativo TurboGears nele. Agora podemos continuar editando omain.py que é iniciado pelo AppEngine para executar nosso aplicativo e realmente escrever um aplicativo TurboGears lá.
Adicione o seguinte conteúdo em main.py -
import os
import site
site.addsitedir(os.path.join(os.path.dirname(__file__), 'packages'))
from tg import expose, TGController, AppConfig
class RootController(TGController):
@expose()
def index(self):
return "<h1>Hello World</h1>"
config = AppConfig(minimal = True, root_controller = RootController())
app = config.make_wsgi_app()
Agora execute o aplicativo do AppEngine Launcher e clique no botão de navegação para ver se o aplicativo funciona corretamente no host local.
Já criamos um projeto chamado mytgapp no console do desenvolvedor. Agora clique no botão implantar no Launcher. Depois que o processo de implantação terminar,http://mytgapp.appspot.com/ visite para ver nosso aplicativo online.