Início
Versões
Imagens
Configuração
Hot Deploying
Início
O OpenShift fornece o S2I habilitado em imagens Python para construir e rodar aplicações Python. O Python S2I builder image usa o código da sua aplicação com as dependências requeridas para criar uma nova imagem contendo sua aplicação Python. Esta imagem pode ser executada pelo OpenShift ou pelo Docker.
Versões
A versão atual que o OpenShift fornece do Python é 2.7, 3.3, 3.4 e 3.5
Imagens
Estas imagens estão disponíveis na distribuição CentOS 7
Imagens baseadas em CentOS 7
Esta imagem está disponível no DockerHub. Para fazer download:
$ docker pull centos/python-27-centos7
$ docker pull openshift/python-33-centos7
$ docker pull centos/python-34-centos7
$ docker pull centos/python-35-centos7
Para usar essa imagem, você pode acessa-las diretamente através desse registro de imagens, ou enviar para seu registro OpenShift Docker. Adicionalmente, você pode criar uma image stream que aponte para a imagem, no seu registro Docker ou numa localização externa. Os recursos do seu OpenShift podem agora fazer referencia ao ImageStream. Você pode encontrar exemplo de definições de image streams para todas as imagens do OpenShift.
Configuração
A imagem Python suporta variáveis de ambiente que podem ser setadas para controlar o comportamento do Python durante a execução.
Para configurar as variáveis de ambiente, você pode coloca-las dentro do arquivo .s2i/environment dentro do seu repositório, ou defini-las na seção environment de configuração do build da definição sourceStrategy.
Tabela 1. Variáveis de ambiente do Python
Nome da Variável | Descrição |
APP_FILE | Esta variável especifica o nome do arquivo passado ao interpretador do python que é responsável por iniciar a aplicação. Ela é setada para app.py por default. |
APP_MODULE | Esta variável especifica o WSGI. Segue o padrão $(MODULE_NAME):$(VARIABLE_NAME), onde o nome do módulo é o caminho completo e o nome da variável refere-se a uma função dentro do módulo especificado. Se você usar setup.py para instalar a aplicação, o nome do módulo pode ser lido através desse arquivo e a variável default para application. Existe um exemplo setup-test-app disponível. |
APP_CONFIG | Esta variável indica o path para um arquivo Python com uma configuração gunicorn. |
DISABLE_COLLECTSTATIC | Defina um valor para inibir a execução do manage.py collectstatic durante o build. Afeta apenas projetos Django. |
DISABLE_MIGRATE | Defina um valor para inibir a execução do manage.py migrate quando a imagem gerada for executada. Afeta apenas projetos Django. |
Hot Deploying
Hot deployment permite que você faça deploy rapidamente de sua aplicação sem ter que gerar um novo S2I build. Se você esta usando Django, hot deployment funciona fora da caixa.
Para habilitar hot deployment enquanto usando Gunicorn, tenha certeza que você tem um arquivo de configuração do Gunicorn dentro do seu repositório com a opção reload setada para true. Especifique o arquivo de configuração usando a variável de ambiente APP_CONFIG. Exemplo, veja o comando oc new-app. Você pode usar o comando oc env para atualizar as variáveis de ambiente de objetos existente.
![]() |
Você deve usar esta opção enquanto estiver desenvolvendo ou debugando; não é recomendado ativar esta opção em um ambiente de produção. |
Para alterar seu código fonte em um pod em execução, use o comando oc rsh para conectar no container:
$ oc rsh <pod_id>
Depois que estiver conectado no container, seu diretório atual é /opt/app-root/src, que é onde seu código esta armazenado.
Comentários
0 comentário
Por favor, entre para comentar.