Série API Connect — Instalando o ambiente

Arthur Magalhaes Fonseca
5 min readAug 10, 2017

--

Você pode encontrar os primeiros posts dessa série nos links abaixo:

Para não deixar o post tão longo vou abstrair a obtenção dos ingredientes dessa receita, você pode obtê-los como for melhor para você.

Vamos então aos ingredientes necessários para a configuração do nosso ambiente:

  • 1 dose de Docker 1.12.0 ou superior
  • 1 dose de Docker-Compose 1.8.1 ou superior
  • 1 pitada de Git
  • Sistema Operacional a gosto

Vamos ao modo de preparo, no meu caso irei utilizar o Ubuntu, mas fique à vontade em escolher seu ambiente preferido:

1 Adicione o Git ao seu sistema operacional cuidadosamente ou em grande proporção, de acordo com a velocidade de sua Internet.

2 Clone o projeto apiconnect-docker através do comando git clone https://github.com/strongloop/apiconnect-docker em uma pasta de sua escolha.

3 Adicione o Docker ao seu sistema operacional cuidadosamente ou em grande proporção, de acordo com a velocidade de sua Internet, e logo em seguida, adicione o Docker Compose.

No caso do Docker, eu havia escrito um post sobre a instalação que eu geralmente sigo em ambiente Ubuntu.

Você pode verificar se fez a correta dosagem desses dois ingredientes executando os comandos docker -v e docker-compose -v:

4 Ao perceber que os ingredientes Docker e Docker-compose se relacionam de acordo com a especificação inicial, execute o comando docker run -it --rm --env SHOW_LICENSE=1 ibmcom/apiconnect:manager-v5.0.6.0

5 Vamos editar alguns parâmetros do arquivo .env dentro do projeto apiconnect-docker:

Descomente a linha ACCEPT_LICENSE=true

Altere as linhas SMTP_HOST, SMTP_PORT e SMTP_SENDER para valores válidos de SMTP.

A partir desse ponto é possível realizar a configuração com DataPower Gateway ou com um Micro Gateway. No nosso caso, daremos prosseguimento utilizando o DataPower Gateway, por ser uma escolha que mais à frente nos oferecerá maior número de componentes para manipulação da criação de APIs.

6 Execute o comando docker-compose up -d para iniciar os containers necessários.

Depois de deixar os ingredientes cozinhando algum tempo, voilá…

Aparentemente alguma coisa não está certa com a nossa receita.

Ao analisar o que poderia ter dado errado, entrei no ambiente de problemas do projeto, e notei que a issue 34 reflete o problema atual

O nosso problema se encontra na safra da imagem DataPower quando misturada com o restante da solução do API Connect. Pelo que foi reportado na issue:

Datapower Docker images 7.6.0 was released a couple of weeks ago
https://hub.docker.com/r/ibmcom/datapower/tags/

I noticed Docker-compose is broken with it

The reason is the default user has changed from root to drouter.

7 Para salvar a nossa receita, vamos fazer um trocar na safra do DataPower por uma outra que se adapta melhor, bastando para isso alterar no arquivo Dockerfile na pasta datapower para a versão da imagem para 7.5.2.

8 Execute novamente o comando docker-compose up -d para iniciar os containers necessários.

Depois de deixar os ingredientes cozinhando novamente entre 5 a 10 minutos em fogo baixo, voilá…

9 Execute o comando docker-compose ps e note que combinamos corretamente todos os ingredientes:

10 Vamos alterar nosso arquivo /etc/hosts para mapear os endereços IP de nosso host Docker. Adicione a seguinte linha <docker-host-ip> apim datapower gwadmin ibmportal microservice, no meu caso, alterei para 0.0.0.0 apim datapower gwadmin ibmportal microservice como abordado na issue 29

Para testar vamos abrir a página do DataPower (https://gwadmin/) e a página do API Manager (https://apim/apim/)

Bom, esse post já está longo. Vamos terminar a instalação por aqui. No próximo post iremos realizar algumas configurações… e antes que eu me esqueça, só gostaria de deixar mais uma vez registrado…

--

--

No responses yet