Skip to content

Latest commit

 

History

History
305 lines (216 loc) · 4.92 KB

Docker f9049249acc44ecaa289e8dff0378c7e.md

File metadata and controls

305 lines (216 loc) · 4.92 KB

Docker

💡 O que é o Docker?

Untitled

💡 Parece familiar? às vezes precisamos desprender muito tempo e energia intelectual para incluir um software que não se encaixa perfeitamente com outras aplicações, para que tudo seja carregado, enviado e vendido em outro lugar...

Untitled

💡 Crie sua conta no Docker Hub e no PWD

Docker Hub Container Image Library | App Containerization

Play with Docker

💡 **Antes dos containers**

https://hub.packtpub.com/wp-content/uploads/2018/03/skill-up-blog_2.png

Untitled

Quais variáveis se importar em um ambiente?

  • Performance
  • Escalabilidade
  • Portabilidade
  • Custo
  • Segurança
  • Habilidades existentes

Untitled


Não confunda VMs com containers!

https://eadn-wc03-4064062.nxedge.io/cdn/wp-content/uploads/2020/05/2020_05_13_12_19_07_PowerPoint_Slide_Show_Azure_AZ104_M01_Compute_ed1_.png

Desenvolvedores - Dev

  • Docker para Mac
  • Docker para Windows
  • Nativo para o Linux

Operação - Ops

  • Docker para AWS

Amazon CloudWatch - Monitoramento de aplicativos e infraestrutura

  • Docker para Azure

💡 Microserviços

microservice-1.gif

💡 Docker containers aumentam a flexibilidade e a performance

e4dd70ac-b365-49a1-b138-7c9e81e4672b-6.webp

Resumindo...


GitHub - GustavoMazz/workShop_docker

💡 Imagens
docker pull alpine:3.6
docker pull alpine:3.7
docker images
💡 Containers
docker run -d -p 80:80 alpine:3.6
docker ps -a
💡 Exportando e importando containeres como imagens
docker export <container> > <filename>.tar
docker import - mynginx < <filename>.tar
💡 Ou, exportando e importando imagens
docker save -o mynginx1.tar nginx
docker load < mynginx1.tar
💡 Subindo uma imagem para o DockerHub
docker run -dit alpine sh
docker exec -it /bin/sh
cat /etc/os-release
💡 Modificar o container
apk update
apk add --no-cache python3 py3-pip
docker commit -m "Alpine Python 3" <container> <imagem>
docker login
docker push <usuario>/repo

Dockerfiles...

  • ADD
  • COPY
  • CMD
  • ENTRYPOINT
  • RUN
  • WORKDIR
  • ENV

Docker Hub


💡 Docker Compose!!
version: '2'
services:
  mysql:
    image: 'bitnami/mariadb'
    ports: 
      - '3306:3306'
    environment:
      - MARIADB_ROOT_PASSWORD=secret

  phpmyadmin:
    image: 'phpmyadmin/phpmyadmin'
    links:
      - mysql
    ports:
      - '80:80'
    environment:
      PMA_HOST: mysql
      PMA_PORT: 3306
💡 O que mais?

Docker Swarm!

Docker Engine 1.12

Compose file version 3 reference

docker swarm init
docker swarm init --advertise-addr eth0
version: '3'
services:
  mysql:
    image: 'bitnami/mariadb'
    deploy:
      mode: replicated
      replicas: 2
      resources:
        limits:
          cpus: '0.25'
          memory: '512M'
        reservations:
          cpus: '0.2'
          memory: '256M'
    networks:
      - exemplo_net
    environment:
      - MARIADB_ROOT_PASSWORD=secret
phpmyadmin:
    image: 'phpmyadmin/phpmyadmin'
    networks:
      - exemplo_net
    deploy:
      mode: replicated
      resources:
        limits:
          cpus: '0.25'
          memory: 512M
        reservations:
          cpus: '0.25'
    links:
      - mysql
    ports:
      - '80:80'
    environment:
      PMA_HOST: mysql
      PMA_PORT: 3306

networks:
  exemplo_net:
docker stack deploy --compose-file docker-compose.yml stackdemo
docker service ls
docker ps -a

Docker Hub

Docker Hub

Docker Hub

Docker Hub