$30 off During Our Annual Pro Sale. View Details »

Dockercon 2017 recap (Meetups Docker SP e Campinas)

Dockercon 2017 recap (Meetups Docker SP e Campinas)

Palestra apresentada dia 06 de maio de 2017 no 3º meetup de Docker em Campinas ministrado na Daitan Group e no dia 02 de maio de 2017 no 12º meetup de Docker em São Paulo ministrado no auditório do Nubank. Mostramos como foi o planejamento e o acompanhamento da Dockercon 2017 e também as novidades lançadas lá em Austin, TX.

Wellington F. Silva

May 07, 2017
Tweet

More Decks by Wellington F. Silva

Other Decks in Technology

Transcript

  1. Dockercon 2017
    Retrospetiva

    View Slide

  2. $ whoami
    • @_wsilva
    • wsilva, boina, tom, fisi
    • Pai, téc. em telecom, programador, sysadmin,
    instrutor (bit.ly/curso-docker), escritor (Aprendendo
    Docker)

    View Slide

  3. Início

    View Slide

  4. View Slide

  5. Chegando lá

    View Slide

  6. View Slide

  7. View Slide

  8. Um dia antes

    View Slide

  9. Dia 0 - Credenciamento,
    Workshops e recepção

    View Slide

  10. View Slide

  11. View Slide

  12. Dia 1 - Docker o dia
    todo

    View Slide

  13. View Slide

  14. View Slide

  15. View Slide

  16. View Slide

  17. Dia 2 - Docker quase
    o dia todo

    View Slide

  18. Demo e hacks no play-with-docker

    View Slide

  19. Demo do Faas
    Function as a Service

    View Slide

  20. Dia 3 - Mais votadas
    abertas ao público /
    Internals Summits

    View Slide

  21. Negócio ficou sério

    View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. Dia 4 - Organizers /
    Capitains Summits

    View Slide

  26. View Slide

  27. Dia 5 - …

    View Slide

  28. View Slide

  29. View Slide

  30. –Linus Torvalds
    “Talk is cheap. Show me the code.”

    View Slide

  31. Novidades
    Multi-Stage Build

    View Slide

  32. Multi-Stage Build
    Instalar wget
    Baixar Docker (wget)
    Baixar Cuberite (wget)
    Build Dockercraft (go build
    dockercraft)
    Rodar Dockercraft

    View Slide

  33. Multi-Stage Build
    Instalar wget
    Baixar Docker (wget) Baixar Cuberite (wget)
    Build Dockercraft (go build
    dockercraft)
    Rodar Dockercraft

    View Slide

  34. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  35. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  36. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  37. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  38. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  39. Multi-Stage Build
    FROM alpine:3.5 AS wget
    RUN apk add --no-cache ca-certificates
    wget tar
    FROM wget AS docker
    ARG DOCKER_VERSION=1.12.1
    RUN wget -qO- https://get.docker.com/
    builds/Linux/x86_64/docker-$
    {DOCKER_VERSION}.tgz | \
    tar -xvz --strip-components=1 -C /bin
    FROM wget AS cuberite
    ARG CUBERITE_BUILD=630
    WORKDIR /srv
    RUN wget -qO- "https://
    builds.cuberite.org/job/Cuberite Linux
    x64 Master/${CUBERITE_BUILD}/artifact/
    Cuberite.tar.gz" |\
    tar -xzf -
    FROM golang:1.7.1 AS dockercraft
    WORKDIR /go/src/github.com/docker/
    dockercraft
    COPY . .
    RUN go install
    FROM debian:jessie
    COPY --from=dockercraft /go/bin/
    dockercraft /bin
    COPY --from=docker /bin/docker /bin
    COPY --from=cuberite /srv /srv
    # Copy Dockercraft config and plugin
    COPY ./config /srv/Server
    COPY ./docs/img/logo64x64.png /srv/
    Server/favicon.png
    COPY ./Docker /srv/Server/Plugins/
    Docker
    EXPOSE 25565
    ENTRYPOINT ["/srv/Server/start.sh"]

    View Slide

  40. Novidades
    Desktop2Cloud

    View Slide

  41. Desktop2Cloud
    • Permite gerenciar repositórios e swarms
    diretamente do Docker for Mac e Windows
    • Todos os swarms onde você tem acesso (mesmo
    que não seus) aparecem listados.

    View Slide

  42. Desktop2Cloud

    View Slide

  43. Novidades
    Linuxkit

    View Slide

  44. Linuxkit
    • Foi aberto opensource durante o keynote do
    Solomon Hykes.
    • Permite criar sistemas Linux extremamente leves,
    seguros, e de uma maneira muito simples, que
    rodem contêineres e usando arquivos yml
    • É usado na criação da VM do Docker for Mac /
    Windows
    • Provavelmente será doado para a Linux Foundation

    View Slide

  45. Novidades
    Moby Project

    View Slide

  46. Moby Project

    View Slide

  47. Moby Project
    • Nada muda pra quem usa Docker
    • Moby é o projeto, Docker o produto
    • Inspirado no case Fedora e Red Hat
    • Os repositórios servem como “cola" para o produto
    Docker

    View Slide

  48. Moby Project
    • O que era opensource permanece opensource
    • Mais alguns repos ainda fechados aos poucos
    serão abertos (como o Linuxkit)

    View Slide

  49. View Slide

  50. Moby Project

    View Slide

  51. Moby Project

    View Slide

  52. Moby Project

    View Slide

  53. Moby Project

    View Slide

  54. Moby Project

    View Slide

  55. Moby Project

    View Slide

  56. Outras novidades

    View Slide

  57. Outras novidades
    • Possibilidade de utilizar ARG no FROM do
    Dockerfile
    • Microsoft já usando Linuxkit junto com HyperV para
    rodar contêineres Linux
    • Oracle entra oficialmente no Docker Store (Docker
    Hub) inclusive com imagens para comunidade
    (Docker-CE)

    View Slide

  58. Obrigado
    http://speakerdeck.com/wsilva
    https://github.com/wsilva/meetup-dockercon17-recap

    View Slide