2.5 - Source to Image (S2I)

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

<?php
echo "<h1>Openshift Workshop v1.0</h1> ";
echo $_SERVER['SERVER_ADDR'];
?>

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 git abaixo 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

git clone https://github.com/<seu-usuario-do-github>/workshop-ocp.git && cd workshop-ocp

Faça o commit do código para o servidor git.

git add index.php
git commit -am "first commit"
git push -u origin master

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

Browse Catalog

Selecione PHP

  • Selecione no menu superior Add to project

  • Selecione o template PHP no submenu Browser Catalog.

  • Selecione o template PHP na versão 7.0.

  • Preencha o campo Name com o valor workshop-ocp

  • Preencha o campo Git Repository URL com o valor https://github.com/<seu-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

  1. Builds -> Builds

  2. Clique em Workshop ocp

  3. No 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.

oc new-app https://github.com/<seu-usuario-do-github>/workshop-ocp.git

Nesse caso, o Openshfit irá tentar adivinhar qual a linguagem que você utilizou na sua aplicação.

Escalar para 4 PODs

Através da seta para cima na lateral do círculo do pod, clique até escalar a aplicação para 4 pods.

Source-to-Image utilizando o Quarkus

Iremos agora utilizar o Source to Image com uma aplicação Java que utiliza o Quarkus. Primeiro criaremos a aplicação e depois publicaremos no Openshift.

Crie um novo repositório no seu github de nome: quarkus-app

Crie o projeto do quarkus getting-started a partir do terminal através do comando maven:

mvn io.quarkus:quarkus-maven-plugin:1.0.0.CR1:create \
    -DprojectGroupId=org.acme \
    -DprojectArtifactId=getting-started \
    -DclassName="org.acme.quickstart.GreetingResource" \
    -Dpath="/hello"

Acesse a pasta do projeto que foi criada:

cd getting-started

Como iremos utilizar o cliente git para acessar o github, configure seu email e nome/sobrenome de acordo com seu usuário no github:

git config --global user.email "<meuemail@email.com>"
git config --global user.name "<Nome e Sobrenome>"

Defina a pasta como um projeto git e adicione todos os arquivos através dos comandos:

git init
git add .

Agora faça o commit dos arquivos:

git commit -m "first commit"

Adicione o endereço do seu repositório que acabou de criar e faça o push:

git remote add origin https://github.com/seu_usuario/quarkus-app.git
git push -u origin master
  1. No menu superior clique em Search Catalog

  2. Na busca, digite openjdk

  3. Selecione o template OpenJDK versão 11

Logo em seguida, preencha os valores conforme abaixo:

  • Application Name: quarkus-app

  • Git Repository URL: https://github.com/<usuario_github>/quarkus-app.git

Em poucos segundos sua aplicação já deverá estar disponível.

Clique na URL gerada para acessá-la.

Para limpar nosso ambiente, execute o seguinte comando:

oc delete all -l application=quarkus-app

Mais informações:

Last updated