Article image

BS

Bruno Santos05/02/2024 19:20
Compartilhe

Como usei o docker no Bootcamp Desenvolvimento Backend com Kotlin

    Introdução

    Olá comunidade da DIO!

    Neste artigo vou apenas compartilhar minha jornada sobre como utilizei a linguagem Kotlin em um container Docker Linux para rodar/desenvolver a aplicação do Bootcamp Desenvolvimento Backend com Kotlin.

    Começando

    Vou partir da premissa de que você tem o Docker instalado no seu sistema operacional, OK ?!

    Você pode deixar a pasta do projeto na sua máquina local mesmo pois vamos usar o recurso de volumes do docker. Uma vantagem dessa abordagem é que se você já tem o git configurado não vai precisar reconfigurar, uma vez que você pode utilizá-lo fora do container. No meu caso o projeto estava em /home/administrator/Projects/kotlin/credit-application-system.

    Selecionando a imagem docker

    Vamos usar a imagem docker chamada "bitnami/java" em http://hub.docker.com pois a mesma está bem atualizada.

    image

    Para baixá-la precisamos rodar o seguinte comando no console do Linux:

    $ docker pull bitnami/java:latest

    Rodando o container

    Assim que terminar de baixar a imagem podemos rodar o container para criarmos o nosso ambiente de desenvolvimento.

    $ docker run --name kotlin-backend-dio -v /home/administrator/Projects/kotlin/credit-application-system:/app -p 8080:8080 -dit bitnami/java:latest

    Explicando as flags utilizadas:

    --name kotlin-backend-dio (nome que você quer dar ao seu container)

    -v /home/administrator/Projects/kotlin/credit-application-system:/app (pasta do projeto e a pasta do container onde ela será mapeada)

    -p 8080:8080 (portas expostas na sua máquina e no container)

    -dit (modo detach e terminal interativo)

    bitnami/java:latest (é a imagem que baixamos)

    Agora podemos entrar no container:

    $ docker exec -it kotlin-backend-dio bash

    Nesse momento você estará dentro do container como root, então vamos instalar o zip e o unzip pois são dependências da ferramenta sdk (The Software Development Kit Manager) que fica em https://sdkman.io/ , com ele seremos capazes de instalar o Kotlin, o SpringBoot e o Gradle. Basta executar os seguintes comandos:

    $ apt update

    $ apt install zip unzip

    $ curl -s "https://get.sdkman.io" | bash

    Após o término da instalação do sdk precisamos sair do container e entrar novamente para atualizar as variávies do path.

    $ exit <enter>

    $ docker exec -it kotlin-backend-dio bash

    Agora sim vamos poder utilizar o sdk para instalar os nossos pacotes. Vale lembrar que neste container já temos o java instalado.

    $ sdk install kotlin

    $ sdk install springboot

    $ sdk install gradle

    Usando o ambiente de desenvolvimento

    Prontinho, após o término desta etapa podemos rodar nossa aplicação Springboot com Kotlin da seguinte forma,

    $ gradle bootRun

    Para rodar testes seria da seguinte forma:

    $ gradle test (roda todos os testes da sua aplicação)

    $ gradle test --tests SuaClasseTest (roda apenas o arquivo que contém a classe SuaClasseTest)

    Agora se você quiser compilar e rodar um arquivo Kotlin faça o seguinte:

    $ kotlinc arquivo.kt -include-runtime -d arquivo.jar && java -jar arquivo.jar

    Referência: https://kotlinlang.org/docs/command-line.html#create-and-run-an-application

    É isso !!! Eu sei que ficou um pouco longo, mas espero que possa contribuir para a comunidade. :-)

    Compartilhe
    Comentários (1)
    Ronaldo Schmidt
    Ronaldo Schmidt - 05/02/2024 22:01

    Excelente artigo. Fiz um projeto completo utilizando django e python num ambiente virtual para um curso e após te-lo concluido percebi que precisaria refazer praticamente todo meu projeto utilizando o docker e colocar em containers separados banco de dados, static files, cache e o conteudo principal entre outras configurações.

    Cara se tivesse lido seu artigo antes não teria tido tanto trabalho.

    Obrigado por compartilhar e bons estudos.