Want to create interactive content? It’s easy in Genially!
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