2.1.5 - Source to Image (S2I)
Criar nova aplicação no github
Usaremos uma aplicação php como exemplo, sinta-se à vontade para usar a sua linguagem de preferência, mas tenha em mente que depois conectaremos a um banco de dados e utilizaremos variáveis de ambiente.
Crie um repositório no github com o nome workshop-ocp

Depois informe o nome do repositório:

Crie o arquivo index.php com o seguinte conteúdo
Essa linha com o conteudo $_SERVER é opcional, ela irá mostrar na tela o IP do pod em que está sendo executada.

Conteúdo do arquivo.

Clique em commit new file para criar o arquivo.

Os passos mostrados acima também podem ser feitos pela linha de comando conforme abaixo:
Atenção. Só execute os comandos do
gitabaixo caso vocẽ não tenha criado os arquivos pela web console conforme mostrado nas imagens acima.
Faça o clone deste novo repositório e crie a página inicial index.php
Faça o commit do código para o servidor git.
No final de tudo, devemos ter um arquivo index.php no nosso repositório do github.

Agora que já temos uma aplicação, podemos prosseguir.
Deploy utilizando S2I
Catalog -> Pesquise por PHP
Selecione no menu superior
Add to projectSelecione o template
PHPno submenuBrowser Catalog.Selecione o template
PHPna versão7.0.Preencha o campo
Namecom o valorapp-s2iPreencha o campo
Git Repository URLcom o valorhttps://github.com/<usuario-do-github>/workshop-ocp.git
Repare que no campo Git Repository URL você deve trocar o <seu-usuario-do-github> pelo usuário da sua conta do github.
Um novo build será executado assim que for clicado em Create

Caso você encontre o erro abaixo durante o build:

E execute novamente o build clicando em
Builds->BuildsClique em
Workshop ocpNo canto direito clique em
Start Build
Assim que finalizado o build, acesse a url gerada em Applications > Routes e verifique a aplicação em funcionamento.

O resultado deve ser algo similar a isso:

Você também pode usar a linha de comando para fazer o S2I.
Para saber o nome do seu projeto no Openshift, basta executar:
Nesse caso, o Openshfit irá tentar adivinhar qual a linguagem que você utilizou na sua aplicação.
Escalar para 4 PODs
Em Overview, clique na seta até escalar a aplicação para 4 pods.

Source-to-Image com outras imagens (Opcional)
Iremos agora utilizar o S2I com um template do Apache HTTPD. Já existe um repositório com um arquivo de exemplo para testarmos essa funcionalidade.
No menu superior clique em Add to project
Na busca, digite httpd
Selecione o template Httpd versão 2.4
Logo em seguida, preencha os valores conforme abaixo:
Name: apache
Git Repository Url: Clique no botão try it

Caso sua aplicação não abra e mostre a seguinte tela:

Isso pode ser devido a um bug no template do Openshift. Para corrigir, basta alterar a porta que a nossa route está utilizando.
Se olharmos a nossa rota, ela está direcionando o acesso para a porta 80.

Quando abrimos o serviço, percebemos que nosso container utiliza também outras portas:

Nosso apache está escutando na porta 8080 e não na 80.
Vamos alterar a rota para apontar para essa porta. Primeiro abrimos a rota do Apache.

Logo em seguida, clicamos no menu lateral direito Action -> Edit
E trocamos a porta que nossa rota está utilizando para a 8080

Agora, nossa aplicação já deve estar disponível.

Para limpar nosso ambiente, execute o seguinte comando:
Para saber o nome do seu projeto no Openshift, basta executar:
Mais informações:
Last updated