0% encontró este documento útil (0 votos)
102 vistas45 páginas

Capacitacion Interna Docker Kubernetes ICP v1.0

Este documento presenta un plan para capacitar internamente sobre una nueva plataforma IBM Cloud Private utilizando contenedores Docker, Kubernetes y microservicios. Se detalla el desarrollo de una aplicación de ejemplo llamada "App Calculadora" que consta de dos microservicios, uno proveedor y otro consumidor. Luego se explican los pasos para dockerizar la aplicación, subirla al clúster ICP y crear los despliegues y servicios de Kubernetes necesarios.

Cargado por

ERICK LEON
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
102 vistas45 páginas

Capacitacion Interna Docker Kubernetes ICP v1.0

Este documento presenta un plan para capacitar internamente sobre una nueva plataforma IBM Cloud Private utilizando contenedores Docker, Kubernetes y microservicios. Se detalla el desarrollo de una aplicación de ejemplo llamada "App Calculadora" que consta de dos microservicios, uno proveedor y otro consumidor. Luego se explican los pasos para dockerizar la aplicación, subirla al clúster ICP y crear los despliegues y servicios de Kubernetes necesarios.

Cargado por

ERICK LEON
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 45

Plan de Modernización de

Servicios y Aplicaciones sobre


ICP
Capacitacion Interna

26 de agosto, 2019

Av. Paseo de la República 1717, La Victoria

Lima, Perú

Teléfonos: 275-7523, 275-4708, 275-4941


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Historial de Revisiones
Descripción Versión Fecha Autor
Creación de documento 1.0 26/08/2019 Jhon Paredes - Everis
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Contenido
1. Introducción ............................................................................................................ 4
2. Consideraciones iniciales ...................................................................................... 5
2.1. Requisitos previos. .......................................................................................... 5
2.2. Configuración de la maquina virtual. .............................................................. 5
2.2.1. ..................................................................................................................................... 7
Consideraciones para la configuración ..................................................................... 7
3. App Calculadora ..................................................................................................... 8
3.1. Diseño de la solución. ...................................................................................... 8
3.2. Creación de servicio calculadora .................................................................... 8
3.3. Creación del servicio calculadoraApp .......................................................... 15
4. Dockerizar la aplicación App Calculadora .......................................................... 19
4.1. Construcción del componente jar ................................................................. 19
4.1.1. ................................................................................................................................... 19
Construccion del componente jar mediante línea de comando ........................ 19
4.1.2. ................................................................................................................................... 20
Construccion del componente jar mediante el IDE de desarrollo .................... 20
4.2. Creación de Docker Image............................................................................. 23
4.3. Creación de Docker Container ...................................................................... 28
5. Subir nuestra aplicación a ICP............................................................................. 33
5.1. ...................................................................................................................................... 33
Subir Docker Image al cluster ICP ............................................................................. 33
5.2. ...................................................................................................................................... 34
Creación de kubernetes deployment en ICP........................................................... 34
5.3. ...................................................................................................................................... 38
Creación de kubernetes service en ICP ................................................................... 38
6. Referencias ........................................................................................................... 45
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

1. Introducción
El presente documento es una guía para el paso a paso que debemos realizar cuando
trabajamos con la plataforma de IBM Cloud Private, desde el desarrollo de un primer
microservicio utilizando Spring boot, construcción de una imagen utilizando docker y su
respectivo despligue en ICP.

Al termino de la guía, se podrá estar en la capacidad de subir nuestras aplicaciones en


la nueva plataforma de contenedores y kubernetes de IBM(ICP).
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

2. Consideraciones iniciales
2.1. Requisitos previos.
Asegurarse de tener instalado y configurado lo siguiente:

 Java 8.
 Maven.
 IDE de desarrollo para java y spring(STS 4, eclipse, etc).
 Oracle VM VirtualBox versión 5.x o superior.
 WinSCP.
 PuTTY.

Tambien es necesario contar con conocimientos en lenguaje de programación


java utilizando el framework spring, Linux, Docker y Kubernetes.

2.2. Configuración de la maquina virtual.


Para poder trabajar sin problemas de conectividad con la red de telefónica a la
hora de utilizar nuestra maquina virtual Centos-7.5-ICP y estando conectado a
Citrix, debemos realizar lo siguiente:

1. Nos dirigimos a la configuración de nuestra VM y seleccionamos en la


propiedad red el tipo NAT.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

2. En la sección Avanzadas, le damos clic al botón Reenvio de puertos para


poder colocar nuestra IP proporcionada por la red donde estemos conectados.

3. Guardamos los cambios efectuados, con ello ya tenemos configurada


correctamente nuestra VM.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

2.2.1. Consideraciones para la configuración

Los puertos necesarios para la configuración del reenvio en nuestra VM son los
siguientes:
Protocolo Valor Descripción

TCP 22 Puerto a utilizarse para conectarse por ssh.

TCP 9090 Puerto a utilizarse para nuestro contenedor consumidor.

TCP 8080 Puerto a utilizarse para nuestro contenedor proveedor.

Tabla Nro. 01

 Se pueden agregar mas puertos en la configuración, sin embargo para la presente guía
con ello es suficiente.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

3. App Calculadora
3.1. Diseño de la solución.
El App Calculadora, es nuestro ejemplo concreto para esta guía donde vamos a
desarrollar dos microservicios apoyándonos en spring boot. El primero que cumple
la función de proveedor que va contar con las 4 operaciones básicas, el segundo
que cumple la función de consumidor que expone una sola operación y que
mediante una lógica se realiza la invocación a los diferentes métodos que expone
el proveedor.

Diagrama de la solución en contenedores Docker.

3.2. Creación de servicio calculadora


Para la creación del servicio proveedor calculadora, realizamos lo siguiente:

1. Ingresamos a nuestro IDE para el desarrollo de microservicios, le asignamos


un espacio de trabajo llamado AppCalculadora.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Imagen referencial

2. Una vez que cargo nuestro espacio de trabajo, comenzaremos a crear el


servicio calculadora. Para ello realizamos lo siguiente:
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

3. Ahora que ya tenemos creado el proyecto en nuestro IDE, procedemos a


definir el contrato de las operaciones que va tener nuestro servicio.
Definición del servicio calculadora

http://localhost:8080/api/calculator
Endpoint

/divide
Resources /add /subtract /multiply

{
{ { {
"divide": {
"add": { "subtract": { "multiply": {
"intA": 6,
"intA": 2, "intA": 4, "intA": 3,
Request "intB": 2
"intB": 2 "intB": 2 "intB": 2
}
} } }
}
} } }

{
{ { {
"divideResponse": {
"addResponse": { "subtractResponse": { "multiplyResponse": {
"divideResult": 3
Response "addResult": 4 "subtractResult": 2 "multiplyResult": 6
}
} } }
}
} } }

Tabla Nro. 02
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

4. Creamos un paquete llamado bean, dentro crearemos las clases java


necesarias para poder cumplir con la definición de los campos de cada
operación del servicio calculadora.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

5. Luego de terminar de construir las clases java para la definición del servicio,
debemos crear una clase java que se encargara de exponer las 4 operaciones
de nuestro servicio calculadora, creamos otro paquete llamado controller y en
ella nuestra clase CalculadoraController.

6. Ejecutamos nuestro servicio y realizamos las pruebas de cada operación.

7. Pruebas mediante Postman.


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

8. Luego de las pruebas ya hemos terminado el servicio calculadora.


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

3.3. Creación del servicio calculadoraApp


Para la creación del servicio consumidor calculadoraApp, realizamos lo siguiente:
1. Creamos un nuevo proyecto de nombre calculadoraApp.

2. Ahora que ya tenemos creado el proyecto en nuestro IDE, procedemos a


definir el contrato de la operacion que va tener nuestro servicio.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Definición del servicio calculadora

http://localhost:9090/api/bus
Endpoint

/operacion
Resources

{
"operacion": {
"input": "10 / 5"
Request
}
}

{
"respuesta": {
"output": 2
Response
}
}

Tabla Nro. 03

3. De la misma forma que el servicio anterior, creamos un paquete llamado bean,


dentro crearemos las clases java necesarias para poder cumplir con la
definición de los campos de la operación del servicio calculadoraApp.

4. Ahora, luego de terminar de construir las clases java para la definición del
servicio, debemos crear una clase java que se encargara de exponer la
operacion de nuestro servicio calculadoraApp, creamos otro paquete llamado
controller y en ella nuestra clase CalculadoraAppController.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

5. Cambiamos el puerto antes de iniciar el servicio, puesto que como vamos a


ejecutar dos proyectos no pueden tener el mismo puerto de arranque.

6. Ejecutamos nuestros servicios y realizamos las pruebas de la operación.

7. Pruebas mediante Postman.


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

8. Luego de las pruebas ya hemos terminado el servicio calculadoraApp


integrado con el servicio calculadora.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

4. Dockerizar la aplicación App Calculadora


4.1. Construcción del componente jar
El componente jar de nuestros servicios calculadora y calculadoraApp puede ser
generado de diferentes maneras, ya sea por línea de comandos o desde el IDE
donde estamos desarrollando nuestro microservicios, para efectos de esta guía
vamos a realizar ambas formas.

4.1.1. Construccion del componente jar mediante línea de comando

Para realizar este procedimiento se debe contar con maven instalado y


configurado en tu computador, ahora si no cuenta con ello puede ingresar a la
maquina vitual proporcionada Centos-7.5-ICP en ella ya se cuenta con maven
configurado correctamente.
Ahora solo bastara con ubicarnos en la carpeta donde se encuentra nuestro
proyecto y ejecutar el siguiente comando:

 mvn clean package

Como podemos apreciar el componente jar se genero correctamente en la


carpeta target dentro del directorio del proyecto.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

4.1.2. Construccion del componente jar mediante el IDE de desarrollo

Para realizar este procedimiento se debe configurar en el IDE de desarrollo el


JDK 8 para poder hacer uso de maven correctamente, para ello seguimos los
siguientes pasos:
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Como podemos apreciar el componente jar se genero correctamente en la


carpeta target dentro del directorio del proyecto.

4.2. Creación de Docker Image


Luego de contar con ambos componentes jar de cada aplicación vamos a proceder
a generar su imagen respectiva mediante docker, para ello vamos a realizar los
siguientes pasos:

1. Ingresar a la maquina virtual con uno de los usuarios proporcionados.

2. Utilizamos la dirección ip de nuestra maquina para poder conectarnos por


WinSCP mediante ssh por el puerto 22.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

3. Abrimos un terminal de PuTTY desde WinSCP para poder realizar los


comandos necesarios para la construcción de la imagen con docker.

4. Ahora que ya ingresamos por ssh y estamos con privilegios de usuario root,
vamos a proceder a crear los diferentes directorios para ambas aplicaciones
y asignarle sus permisos respectivos.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

5. Luego debemos de copiar en cada directorio creado su respectivo


componente jar generado anteriormente, abrimos un terminal en nuestro
computador y ejecutamos lo siguiente.

 cd %ruta_workspace%\calculadora\target
 pscp calculadora-0.0.1-SNAPSHOT.jar
userssh@%ip_computador%:/home/userssh/calculadora
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

 cd %ruta_workspace%\calculadoraApp\target
 pscp calculadoraApp-0.0.1-SNAPSHOT.jar
userssh@%ip_computador%:/home/userssh/calculadoraApp

6. Ahora que ya tenemos los componentes jar en su directorio respectivo,


necesitamos crear el fichero Dockerfile, fichero importante donde se define
los pasos a realizar durante la construcción de la imagen en docker.

Ejecutamos lo siguiente:

Servicio calculadora

Lo que se debe ingresar luego de ejecutar el comando vi Dockerfile es lo


siguiente:

FROM ibmjava:8-sfj
LABEL maintainer="IBM Java Engineering at IBM Cloud"

COPY calculadora-0.0.1-SNAPSHOT.jar /app.jar

ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar
/app.jar" ]

Servicio calculadoraApp

Lo que se debe ingresar luego de ejecutar el comando vi Dockerfile es lo


siguiente:
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

FROM ibmjava:8-sfj
LABEL maintainer="IBM Java Engineering at IBM Cloud"

COPY calculadoraApp-0.0.1-SNAPSHOT.jar /app.jar

ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar
/app.jar" ]

7. Ahora ya podemos construir nuestra docker image, el comando para ello es


el siguiente:

 docker build -f Dockerfile -t <nombre>:<version> .


Entonces nos ubicamos dentro de cada directorio de ambas aplicaciones para
ejecutar el comando indicado líneas arriba y poder construir nuestra docker
image.

Verificamos que efectivamente tenemos nuestras docker image, ejecutamos


el siguiente comando:

 docker images
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

8. Listo ya logramos crear la Docker Image correctamente.

4.3. Creación de Docker Container


Luego de contar con ambas docker image por cada aplicación vamos a proceder
a generar su container respectivo mediante docker, para ello vamos a ejecutar el
siguiente comando:

 docker run --name=<name_container> -d -p <puerto_ext>:<puerto_int>


<nombre_imagen>:<version>

Verificamos que ambos docker container existan y se encuentren ejecutando.

 docker ps

Revisamos el log de ejecución del container.

 docker logs –f <containerNameOrId>


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Realizamos las pruebas mediante Postman de alguna de las operaciones en


ambas aplicaciones.

Servicio calculadora

Servicio calculadoraApp

La razón del siguiente error en la prueba del servicio calculadoraApp es la


siguiente, si revisamos el diseño de la solución que se encuentra en la sección 3.1
nos vamos a dar cuenta que la comunicación es entre contenedores a través de
sus respectivas ip que se genera automáticamente cuando docker inicia el
contenedor.

Por ello es que nuestro servicio calculadoraApp tiene una falla en la comunicación
con el servicio calculadora, porque lo intenta realizar mediante localhost. Para
solucionar este error primero debemos obtener la dirección ip asignada al
contenedor del servicio calculadora, para ello ejecutamos lo siguiente:

 docker inspect -f "{{ .NetworkSettings.IPAddress }}" <containerNameOrId>


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Ahora que ya contamos con la dirección ip del contenedor del servicio calculadora,
debemos editar el código fuente de calculadoraApp para que apunte a esta
dirección ip obtenida.
Utilizamos cualquier editor de texto para modificar las fuentes de la clase java
CalculadoraAppController.

De igual forma debemos comentar la configuración que dejamos en el fichero


application.properties

Luego de estas modificaciones volvemos a generar el componente jar para poder


contruir la imagen docker mediante este nuevo componente generado.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Actualizamos el componente jar en la maquina virtual.

Eliminamos el contenedor que generamos asi como su imagen respectiva, para


ello ejecutamos los siguientes comandos:

 docker rm -f <containerNameOrId>
 docker rmi -f <imageNameOrId>

Listo, ya podemos volver a contruir nuestro docker image y container.

Volvamos a realizar las pruebas con Postman.


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Como podemos comprobar el error fue solventado y ya logramos dockerizar


nuestras aplicaciones calculadora y calculadoraApp.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

5. Subir nuestra aplicación a ICP


Luego de la construcción de nuestros primeros microservicios asi como la dockerizacion
de nuestra aplicación App Calculadora, llego el momento de subir nuestros dos servicios
a la plataforma de contenedores y kubernetes de IBM llamada IBM Cloud Private.

5.1. Subir Docker Image al cluster ICP


Pasos para poder realizar la subida de nuestro docker image.

1. Ingresar a la maquina virtual y logearnos a la consola de ICP, para ello


ejecutamos el siguiente comando:

 cloudctl login -a https://10.4.77.115:8443 -u <user_icp> -p <pass_icp> -


n <namespace> --skip-ssl-validation

2. Ahora debemos etiquetar nuestra imagen mediante el comando:

 docker tag <image_name>:<version>


<cluster_CA_domain>:8500/<namespace>/<image_name>:<version>

3. Luego de ello debemos logearnos en docker para poder realizar el push.

 docker login <cluster_CA_domain>:8500


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

4. Realizamos el push de nuestra imagen.

 docker push
<cluster_CA_domain>:8500/<namespace>/<image_name>:<version>

5. Verificamos la existencia de la imagen en ICP

6. Listo ya hemos subido correctamente nuestro docker image del servicio


calculadora al cluster de ICP.

5.2. Creación de kubernetes deployment en ICP


Pasos para la creación de kubernetes deployment.

1. Configurar el cliente de kubernetes en nuestra maquina virtual, para ello


obtenemos dicha configuración desde la consola de ICP.

Iniciamos sesión en la consola de ICP.

https://10.4.77.115:8443/oidc/login.jsp
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

2. Validamos que la configuración aplico satisfactoriamente, ejecutando el


comando.

 kubectl version

3. Ahora ya podemos ejecutar el siguiente comando para poder crear el


kubernetes deployment.

 kubectl run <name> --


image=<cluster_CA_domain>:8500/<namespace>/<image_name>:<ve
rsion> --port=<port> -n <namespace>
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

4. Verificamos el deployment realizado.

 kubectl get deployments -n <namespace>

5. Verificamos el pod generado.

 kubectl get pods -n <namespace>

 kubectl describe pod <pod_id> -n <namespace>


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

6. Listo, ya logramos construir un kubernetes deployment correctamente en ICP.

5.3. Creación de kubernetes service en ICP

Cuando se tiene un deployment creado correctamente solo esta trabajando dentro


de la red local, mas no tiene salida por el proxy de ICP. Para ello es necesario
exponer un kubernetes service.

Solo bastara con ejecutar el siguiente commando.


 kubectl expose deployment <deployment_name>--type=NodePort -n
<namespace>

Ahora para fines de esta guía no es necesario exponer como servicio el


deployment calculadora, ya que será consumido en la red local donde se crean
los pods. Sin embargo solo habíamos creado el deployment de la aplicación
calculadora, nos falto calculadoraApp.

La razón es simple, primero era necesario obtener la dirección ip del pod que se
le otorgo al momento de crear el deployment, con ello tenemos que volver a
modificar las fuentes para volver a crear el componente jar, la imagen, subirla al
cluster ICP para poder crear su respectivo kubernetes deployment y kubernetes
service.

La dirección ip asiganada al pod del deployment calculadora fue 192.168.176.149,


comencemos modificando las fuentes.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Fichero pom.xml

Construimos el componente jar y lo copiamos al directorio de nuestra maquina


virtual, también modificamos el archivo Dockerfile para que apunte a esta nueva
versión.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Generamos la nueva versión de la imagen y la subimos al cluster de ICP.

Creamos el deployment y lo exponemos.


Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

El puerto que nos asigno el servicio para ser consumido es el siguiente 31399, la
forma de consumirlo seria apuntando a la ip del proxy que tiene ICP y el puerto
asignado por el servicio.
 <ip_proxy_icp>:<port_service>
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Realizamos las pruebas respectivas.

Endpoint: http://10.4.77.124:31399/api/bus
Resource: /operación
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

Como podemos apreciar las pruebas fueron satisfactorias.

Y llegamos al final de esta guía, esperando que sea de gran ayuda para futuros
desarrollos. Con un inicio desde el desarrollo de nuestro primer microservicio,
dockerizando nuestra aplicación app calculadora y culminando con su respectivo
despliegue y exposición en la plataforma de contenedores y kubernetes de IBM
llamada IBM Cloud Private.
Nueva Plataforma IBM Cloud Private, Docker
Container, Kubernetes & Microservicios.

6. Referencias
Como referencias no solo para el desarrollo de esta guía, comparto los siguientes link:

 https://kubernetes.io/es/docs/concepts/
 https://docs.docker.com/get-started/
 https://www.scalyr.com/blog/create-docker-image/
 https://bluedemos.com/show/2459
 https://www.ibm.com/cloud/blog/deploying-to-ibm-cloud-private-3-1-with-ibm-cloud-
developer-tools-cli
 https://www.ibm.com/support/knowledgecenter/en/SSBS6K_3.1.2/manage_applications
/deploy_app.html
 https://www.ibm.com/support/knowledgecenter/SSBS6K_3.1.2/manage_applications/ex
pose_app.html
 https://www.baeldung.com/spring-resttemplate-post-json
 https://spring.io/guides/gs/consuming-rest/
 https://www.callicoder.com/spring-boot-docker-example/
 https://spring.io/guides/gs/consuming-web-service/
 https://spring.io/guides/gs/producing-web-service/
 https://spring.io/guides/tutorials/rest/
 https://spring.io/guides/gs/actuator-service/

También podría gustarte