Nesse artigo vou mostrar como configurar uma aplicação Maven para logar
no Docker Hub através do arquivo settings.xml da pasta .m2 e então publicar a
imagem do seu projeto.
Assumimos que você já tem seu
projeto configurado para usar o Docker, ou seja, já tem o Dockerfile
configurado. Vamos configurar então o pom.xml pois é
nele que vamos dizer o repositório do projeto e que ele deve se logar pelas
configurações do Maven:
<build> |
|
<plugins> |
|
<plugin> |
|
<groupId>org.springframework.boot</groupId> |
|
<artifactId>spring-boot-maven-plugin</artifactId> |
|
</plugin> |
|
<plugin> |
|
<groupId>com.spotify</groupId> |
|
<artifactId>dockerfile-maven-plugin</artifactId> |
|
<version>1.4.6</version> |
|
<executions> |
|
<execution> |
|
<id>default</id> |
|
<goals> |
|
<goal>build</goal> |
|
<goal>push</goal> |
|
</goals> |
|
</execution> |
|
</executions> |
|
<configuration> |
|
<useMavenSettingsForAuth>true</useMavenSettingsForAuth> |
|
<repository>seuDockerID/seuProjeto</repository> |
|
<tag>${project.version}</tag> |
|
<buildArgs> |
|
<JAR_FILE>${project.build.finalName}.jar</JAR_FILE> |
|
</buildArgs> |
|
</configuration> |
|
</plugin> |
|
</plugins> |
|
</build> |
Agora vamos configurar o arquivo settings.xml
que fica dentro da pasta .m2 e contém configurações globais do maven
para sua máquina. É
possível que esse arquivo não exista na sua máquina, pois ele não é obrigatório
para o Maven funcionar.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<settings
xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>docker.io</id>
<username>seu_usuario</username>
<password>sua_senha</password>
<configuration>
<email>seu_email</email>
</configuration>
</server>
</servers>
<configuration>
<repository>seuDockerID/seuProjeto</repository> //o mesmo usado no pom.xml
<tag>${project.version}</tag>
<useMavenSettingsForAuth>true</useMavenSettingsForAuth>
</configuration>
</settings>
Agora basta você gerar o seu projeto com o Maven seja pelo comando mvn package ou mvn clean install que o Maven vai gerar sua imagem Docker! Basta você executar o comando Docker images para ver sua nova imagem criada 😊!
Para enviar para o Docker Hub basta executar o comando mvn
dockerfile:push.
Pronto, assim o ciclo de geração e publicação de imagens Docker ficou controlado pelo Maven.
Nenhum comentário:
Postar um comentário