Create a docker image from a spring boot project

In order to create a docker image from a spring boot project, First, your pom.xml has to be configured. <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- Cofiguration for creating a docker image --> <image> <name>chamow01/${project.artifactId}</name> </image> </configuration> </plugin> </plugins> </build> Then, the next maven command needs to be applied, so spring boot uses paketo-buildpacks in order to create a docker image based on you Java code mvn spring-boot:build-image ... [INFO] > Running creator [INFO] [creator] ===> DETECTING [INFO] [creator] 6 of 24 buildpacks participating [INFO] [creator] paketo-buildpacks/ca-certificates 3.2.0 [INFO] [creator] paketo-buildpacks/bellsoft-liberica 9.3.2 [INFO]

Configuración de Swagger

Swagger permite documentar las APIS de un proyecto de forma automática.

Para usar swagger en un proyecto maven, se debe seguir los siguientes pasos

  • Configuración de dependencias en proyecto maven.

   <!--SWAGGER-->
<dependency>
	<groupid>io.springfox</groupid>
	<artifactid>springfox-swagger2</artifactid>
	<version>2.9.2</version>
</dependency>

<dependency>
	<groupid>io.springfox</groupid>
	<artifactid>springfox-swagger-ui</artifactid>
	<version>2.9.2</version>
</dependency>
  • Crear una clase SwaggerConfig configurada con las anotaciones: @Configuration
    @EnableSwagger2
    y que retorne un objecto de tipo Docket

@Configuration
@EnableSwagger2
public class SwaggerConfig {
	
	@Bean
	public Docket apiDocket() {
		return new Docket(DocumentationType.SWAGGER_2)
				.apiInfo(getApiInfo())
				.select()
				.apis(RequestHandlerSelectors.any())
				.paths(PathSelectors.any())
				.build();
		
	}

	private ApiInfo getApiInfo() {
		return new ApiInfoBuilder().title("WARRIOR-SOFT")
				.description("REST WebServices HOME-PAY")
				.contact(new Contact("WARRIOR-SOFT", "www.warrior-soft.com", "info@warriorsoft.com"))
				.version("1.0")
				.build();
				
	}

}

  • Ingresar a la consola de swagger
    •  http://localhost:8080/swagger-ui.html
Fuentes:


Comentarios

Entradas populares de este blog

Create a docker image from a spring boot project

Comandos docker

Kubernetes -Tipos de objetos