Want to create interactive content? It’s easy in Genially!

Get started free

Docker engine presentation

David Duarte

Created on January 21, 2021

Start designing with a free template

Discover more than 1500 professional designs like these:

Transcript

Instalando a docker engine

TREINAMENTO

Parâmeros do "docker run"

DOCKER

Containerizando banco de dados maria db

ENGINE

Configurando um projeto spring para acessar o container do mariadb

Criando uma imagem personalizada com Dockerfile

BY

DAVID DUARTE

INSTALANDO DOCKER ENGINE

$ apt-get update

$ apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -

$ add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"

$ apt-get update

$ apt-get install docker-ce docker-ce-cli containerd.io

Referência: https://docs.docker.com/engine/install/ubuntu/

PARÂMETROS DO DOCKER RUN

--name Utilizado para nomear o container

--network Utilizado para mapear a subrede em que o container deve pertencer

-p Utilizado para mapear uma porta externamente

-e Utilizado para mapear uma variável de ambiente dentro do container

-d Utilizado para informar que o container deve rodar em segundo plano

CONTAINERIZANDO BANCO DE DADOS MARIA DB

CRIANDO A NETWORK E O CONTAINER DO MARIA DB

$ docker network create -d bridge siemweb

$ docker run --name mariadb -p 3306:3306 --network siemweb -e MYSQL_ROOT_PASSWORD=123456 -d mariadb:latest

CONFIGURANDO O BANCO DE DADOS

$ docker exec -it mariadb bash

$ apt-get update && apt-get install nano

$ nano /etc/mysql/mariadb.conf.d/50-server.cnf

$ mysql -uroot -p123456

$ create database siem2;

CONFIGURANDO UM PROJETO SPRING PARA ACESSAR O MARIA DB

EM SEU PROFILE DO PROJETO, ADICIONA AS SEGUINTES PROPRIEDADES:

spring.jpa.hibernate.naming.implicit-strategy=org.hibernate.boot.model.naming.ImplicitNamingStrategyLegacyJpaImpl

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl

spring.jpa.database-platform=org.hibernate.dialect.MariaDB103Dialect

spring.jpa.properties.hibernate.show_sql=true

spring.jpa.properties.hibernate.format_sql=true

spring.jpa.properties.hibernate.current_session_context_class=thread

spring.jpa.properties.hibernate.hbm2ddl.auto=update

spring.datasource.driver-class-name=org.mariadb.jdbc.Driver

spring.datasource.url=jdbc:mariadb://mariadb:3306/siem2?autoReconnect=true&useTimezone=true&serverTimezone=UTC

spring.datasource.username=root

spring.datasource.password=123456

CRIANDO UMA IMAGEM PERSONALIZADA COM DOCKERFILE

O ARQUIVO Dockerfile

FROM openjdk:8-jdk-alpine #VARIÁVEIS ENV ENV_PROFILE docker ENV LOG_PATH "/logs" ENV APP_PATH="siemrest.jar" ENV SERVER_PORT 9000 #CONFIGURANDO A IMAGEM EXPOSE $SERVER_PORT COPY $APP_PATH app.jar RUN mkdir ${LOG_PATH} RUN chmod 777 ${LOG_PATH} && touch ${LOG_PATH} ENTRYPOINT [ "java", "-jar", "-Dspring.profiles.active=${ENV_PROFILE}", "/app.jar" ]

CRIANDO UMA IMAGEM PERSONALIZADA COM DOCKERFILE

REPRESENTAÇÃO DO .jar E Dockerfile (PARA SUBIR A IMAGEM, ELES DEVEM ESTAR NA MESMA PASTA)

CRIANDO A IMAGEM E SUBINDO O CONTAINER

$ docker build -t siemrest:0.0.1 .

$ docker run -d --name siemrest --network siemweb siemrest:0.0.1