EAD #7: Docker compose na API

Sdílet
Vložit
  • čas přidán 12. 09. 2024
  • Vamos criar o docker-compose para rodar nossa aplicação Node integrado com o MongoDB!
    Projeto no GitHub (Já deem um STAR no projeto):
    github.com/pro...
    Veja o primeiro vídeo da série:
    • Plataforma de EAD #1 -...
    APOIE O CANAL
    apoia.se/progr...
    REDES SOCIAIS
    Grupo do facebook:
    / 326517464701634
    Página no facebook:
    / programadorabordo
    Instagram:
    @programadorabordo
    Telegram:
    t.me/programad...

Komentáře • 43

  • @ProgramadorABordo
    @ProgramadorABordo  Před 3 lety +1

    🔥🔥 *MEU CURSO DE DOCKER* 🔥🔥
    Estou planejando o curso de Docker com a melhor didática do mundo (e sem cortes) ! Faça sua pré-inscrição para receber comunicado de quando abrir inscrições forms.gle/Pwbzwt4eMDExGvKh9

  • @marcelobarth9393
    @marcelobarth9393 Před 3 lety +1

    Por favor Airton. Faça as aulas sobre rede! Muito show seu canal....

  • @LucasLopes-hd1ms
    @LucasLopes-hd1ms Před 3 lety +1

    Por favor, faça sim esse vídeo sobre redes 9:25

  • @allysonlima8256
    @allysonlima8256 Před 5 lety

    Parabéns pela didática brother. Se possível um vídeo de serviço de mensageria e docker seria ótimo, abs.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Po, esse assunto é top mesmo!! Talvez role mais pra frente no EAD ou um vídeo específico! :)

  • @ribafs
    @ribafs Před 5 lety

    Venho dar duas sugestões que acho importantes para qualquer projeto:
    - Criar um site para documentar o projeto (meu preferido é o mkdocs)
    - Elaborar um projeto detalhado dos bancos de dados. Não conheço o Mongo, mas para o MySQL gerar o DER com todas as tabelas, relacionamentos, tipos de dados dos campos, tamanho de cada campo, constraints, etc. Minha pferramenta preferida é o dbvis.com.
    Também elaborar um projeto para o aplicativo, algo mais detalhado que o já visto, detalhando a API, o admin, o site, os componentes, os temas, etc.
    Minha experiência com node e APIs é muito pequena, mas tenho boa experiência com PHP e MySQL. Espero que consiga continuar acompanhando e finalmente aprender sobre node e APIs. Vou tentar.
    De qualquer forma o projeto tem meu apoio, pelo menos moral e faço votos que dê bons frutos.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Fala Ribamar! Muito obrigado pelo comentário e as recomendações!!
      Ter um site com a documentação da API e sobre o EAD em si seria muito bom! Super fecho, porém a princípio devo esperar colaborações pra isso hehe
      A princípio não farei o DER, apenas os fluxos e relacionamentos como mostrei no video de mysql e mongodb mas isso tudo pode ser colaborativo também. Como estou fazendo em formato de videoaula, também fico preocupado de ser demais ensinar cada etapa aqui no projeto.
      Se você estiver afim, podemos trocar sobre isso lá nas issues do github e começar a modelar os bancos de forma mais formal github.com/programadorabordo/ead-api/issues
      Abss

    • @ribafs
      @ribafs Před 5 lety

      @@ProgramadorABordo Beleza. Posso criar o site no próprio repositório do GH. O mkdocs cria com markdown e gera em html e cia. Quanto ao DER também posso criar, basta me enviar o script.sql.Vou criar uma isso sobre isso.

  • @lucascota7258
    @lucascota7258 Před rokem

    Excelente conteúdo como sempre Ayrton. Voce teria alguma aula, ou direcionamento de como realizar um gitclone no docker compose ?? Estou usando o windows 10

  • @adrianofaria2834
    @adrianofaria2834 Před 3 lety +1

    Excelente conteúdo mano, parabéns! Qual o material em português vc indica para se aprofundar em Docker? Tentei comprar livros, mas ou eram antigos (2016) ou quem comprou falava muito mau. Abraço

    • @ProgramadorABordo
      @ProgramadorABordo  Před 3 lety +1

      Fala Adriano! Rapaz, realmente não sei dizer :/ Eu cheguei a comprar curso na udemy só que em inglês. De resto, aprendi nas empresas e lendo a doc mesmo..

  • @Goliank4987KatiUchaDiedy

    Show.... será interessante um vídeo sobre rede "Nat" e placa modo Bridge.

  • @rzjprogramador6297
    @rzjprogramador6297 Před 3 lety

    Ola minha duvida ... No Ubuntu 20.04 .. as pastas que mapeamos para criar as copias podem ser qualquer uma que escolhermos e ao rodar o docker-compose up -d ...ele cria automaticamente as pastas mapeadas ?

  • @frrabelo
    @frrabelo Před 4 lety

    Docker é novidade pra mim.
    Assistir a sua playlist sobre Docker, você usou tudo local no seu host, é possivel usar o Docker como um servidor web php?
    Quero ver um video do Docker funcionando em produção.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 4 lety +1

      Sim!! Os seus containers vão para produção, assim você não precisa trabalhar toda a configuração do seu projeto novamente em um servidor pois já vai estar tudo no container definido. Tem várias formas de orquestrar containers, uma delas é através do kubernetes!

    • @frrabelo
      @frrabelo Před 4 lety

      @@ProgramadorABordo Valeu!

  • @Gmaaa
    @Gmaaa Před 4 lety

    Cara eu faço isso mas minha network não ve quais são os contêiner. e meus contêiner não roda.

  • @nelsonjunior3234
    @nelsonjunior3234 Před 5 lety +1

    Não seria melhor criar uma imagem Docker pra o projecto? E disponibilizar via Docker Hub.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety +1

      Fala Nelson! Excelente ponto! Acredito que mais pra frente vai haver a necessidade quando tivermos mais especificidades na imagem.
      Já que tocou nesse ponto, é uma excelente contribuição de fazer lá via github :)

  • @sidneiglasman8878
    @sidneiglasman8878 Před 5 lety

    localhost:3000 no browser, eu achava que o browser iria exibir a mensagem Hello World!, definida no index.js. Mas como eu ja tinha dito não funcionou. Descobri como resolver; tava na cara, ali na página do hapijs. Lá é dito que se não conseguirmos acessar o server externamente ao docker, talvez seja necessário trocar o valor da propriedade host. de localhost para 0.0.0.0. Batata! funcionou certinho;
    const server = Hapi.server({
    port: 3000,
    host: '0.0.0.0'
    });
    em vez de
    const server = Hapi.server({
    port: 3000,
    host: 'localhost'
    });
    Mas cuidado, pois a forma mais segura seria com localhost...
    The host property set to localhost is likely the safest choice. In a docker container, however, the localhost may not be accessible outside of the container and using host: '0.0.0.0' may be needed.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Isso, é o '0.0.0.0', só vai ficar assim para rodarmos local! Sem problemas ;)

  • @ribafs
    @ribafs Před 5 lety +1

    Olá! Desculpe se fujo do assunto.
    Gostaria de saber como gravar as alterações de uma imagem. Acesso o terminal bash, atualizo e instalo apenas um pacote, mas após reiniciar o docker as alterações desaparecem.
    Crio o volume como ensinado na aula inicial sobre docker e também executo
    docker commit na imagem mas não consigo que guarde as alterações.

    • @wizzy7449
      @wizzy7449 Před 5 lety

      Eu rodo o comando docker build todas vez que faço alguma alteração, e sempre funciona.

    • @ribafs
      @ribafs Před 5 lety

      @@wizzy7449 Valeu Wizzy. Funcionou legal.
      Tive vários problemas com o Docker. Espero que este seja o último. :)
      Muito obrigado.

    • @ribafs
      @ribafs Před 5 lety

      De volta com o problema.
      Desliquei o micro e quando liguei novamente a imagem estava inalterada.
      Que fiz?
      Então agora tentei usar o commit antes do build e depois exportar a imagem para .tar
      Removi tudo.
      Então executei o docker load.
      Abri o terminal bash do container e minhas alterações desapareceram.
      Paciência. Deve ter algo que não estou fazendo ou que estou fazendo errado.
      Estou usando Linux Mint 19.1, talvez ajude.

    • @ribafs
      @ribafs Před 5 lety

      @@wizzy7449 Descobri o problema. Como suspeitei era aqui comigo. Conversando com um colega ele me esclareceu que o docker é diferente do vagrant. No docker somente permanece o que está na imagem ou no Dockerfile. Se eu adicionar um pacote ele morrerá ao parar o doker.
      Vamos que vamos.

  • @robertosaldanha3571
    @robertosaldanha3571 Před 5 lety

    fala blz? tu não mostrou a criação do folder .dbcache, é dentro desse folder (dbcache) que devo baixar a imagem do Mongo e do node ? vlw

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety +1

      Fala Roberto!
      Essa pasta saiu de penetra nessa aula hahaha mas ela é gerada automaticamente quando você for rodar os containers depois de ter configurado seu docker-compose como fiz nessa aula.
      Essa pasta .dbcache fica armazenado os arquivos do mongo do container. Não se preocupe com ela, como disse, ela vai ser gerado automaticamente!
      As imagens do Mongo e Node vão ser baixados automaticamente pra você pelo Docker e vão ficar em outro lugar ;)

  • @JohanGuse
    @JohanGuse Před 5 lety

    Faça o vídeo do Docker Network.... obrigado.

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Shoow Johan! Bom saber q tem interesse!

    • @JohanGuse
      @JohanGuse Před 5 lety +1

      @@ProgramadorABordo Eu queria ver como o Docker funcionando de uma forma real. Enviando os arquivos para um VPS, atualizando os arquivos com zero (ou quase) downtime, exemplos reais. Vai ter isso mais para frente?

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Vai sim Johan! Provavelmente vai ser aqui nessa série de EAD mesmo!

  • @limaand2009
    @limaand2009 Před 4 lety

    dicas para criar docker numa vps?

    • @ProgramadorABordo
      @ProgramadorABordo  Před 4 lety

      Sim, em qualquer lugar que tenha servidores, mesmo sendo em uma VPS

  • @sidneiglasman8878
    @sidneiglasman8878 Před 5 lety

    Olá! Neste ponto, ao término do EAD #7, quando digitamos no browser localhost/3000 não deveria aparecer a mensagem Hello World? Não está me acontecendo. Dá erro no browser a mensagem é 'A conexão foi reinicianda'
    Pelo log, parece que tá certo...
    [nodemon] 1.19.1
    [nodemon] to restart at any time, enter `rs`
    [nodemon] watching: *.*
    [nodemon] starting `node src/index.js`
    Server running on localhost:3000

  • @robertosaldanha3571
    @robertosaldanha3571 Před 5 lety

    Fala beleza ? quando eu dou o comando docker-compose up -d ele baixa as imagens do mongo do node:10.16-slim, porem quando vou startar os containers somente o do mongo starta, o do node nem aparece quando dou um docker container ps, vc saberia o que provavelmente seria ?

    • @ProgramadorABordo
      @ProgramadorABordo  Před 5 lety

      Fala Roberto! Não tenho certeza se é esse o problema. Troque o host do Node 'localhost' para '0.0.0.0'. eu mostro isso nos vídeos seguinte

    • @robertosaldanha3571
      @robertosaldanha3571 Před 5 lety

      @@ProgramadorABordo Ja troquei e mesmos assim não entrou no ar ... ainda não descobri o problema, o pior e que não acusa erro algum, mas não roda o container do node, obrigado por responder.

  • @RicardoLuizPinto
    @RicardoLuizPinto Před 4 lety

    Qual a maneira correta de compartilhar o conteúdo do DB que foi para o volume com outra pessoa?

    • @ProgramadorABordo
      @ProgramadorABordo  Před 4 lety +1

      Geralmente esse é um dado fake e não se compartilha... Se precisar, acredito que você possa fazer da forma que preferir... Compactar e enviar, algo assim.
      O mais comum é um projeto ter ambiente de desenvolvimento, que fica em servidores para os devs ficarem testando, e ali sim fica o dado compartilhado