CursosEmpresasBlogLiveConfPrecios

Docker networking: colaboración entre contenedores

Clase 19 de 25 • Fundamentos de Docker 2018

Contenido del curso

Introducción

  • 1
    Qué aprenderás sobre Docker

    Qué aprenderás sobre Docker

    03:11 min
  • 2
    Problemáticas del desarrollo de software profesional

    Problemáticas del desarrollo de software profesional

    06:49 min
  • 3
    Qué es Docker: containarization vs virtualization

    Qué es Docker: containarization vs virtualization

    00:00 min

Primeros pasos

  • 4
    Cómo instalar Docker

    Cómo instalar Docker

    10:13 min
  • 5
    Primeros pasos: Hola mundo y Docker Engine

    Primeros pasos: Hola mundo y Docker Engine

    03:44 min
  • 6
    Contenedores

    Contenedores

    04:54 min

Aprendiendo a usar los contenedores

  • 7
    Explorar el estado de docker

    Explorar el estado de docker

    08:42 min
  • 8
    El modo interactivo

    El modo interactivo

    08:04 min
  • 9
    Ciclo de vida de un contenedor

    Ciclo de vida de un contenedor

    07:34 min
  • 10
    Exponiendo contenedores al mundo exterior

    Exponiendo contenedores al mundo exterior

    08:20 min
  • 11
    Datos en Docker

    Datos en Docker

    10:34 min
  • 12
    Datos con Docker: Volumes

    Datos con Docker: Volumes

    08:51 min

Imágenes

  • 13
    Conceptos fundamentales de Docker: imágenes

    Conceptos fundamentales de Docker: imágenes

    09:54 min
  • 14
    Construyendo nuestras propias imágenes

    Construyendo nuestras propias imágenes

    09:34 min
  • 15
    Comprendiendo el sistema de capas

    Comprendiendo el sistema de capas

    07:54 min

Desarrollando con Docker

  • 16
    Usando docker para desarrollar aplicaciones

    Usando docker para desarrollar aplicaciones

    06:57 min
  • 17
    Reto

    Reto

    00:31 min
  • 18
    Entendiendo el cache de layers para estructurar correctamente tus imágenes

    Entendiendo el cache de layers para estructurar correctamente tus imágenes

    09:16 min
  • 19
    Docker networking: colaboración entre contenedores

    Docker networking: colaboración entre contenedores

    Viendo ahora

Docker compose

  • 20
    Docker-compose: la herramienta todo-en-uno

    Docker-compose: la herramienta todo-en-uno

    08:38 min
  • 21
    Trabajando con docker-compose

    Trabajando con docker-compose

    06:41 min
  • 22
    Docker-compose como herramienta de desarrollo

    Docker-compose como herramienta de desarrollo

    14:53 min

Docker Avanzado

  • 23
    Conceptos para imágenes productivas

    Conceptos para imágenes productivas

    11:17 min
  • 24
    Manejando docker desde un contenedor

    Manejando docker desde un contenedor

    09:41 min

Cierre

  • 25
    Cierre del curso

    Cierre del curso

    01:19 min
Tomar examen

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads
        Carlos Andrés Charris S

        Carlos Andrés Charris S

        student•
        hace 7 años

        Borrar una redes en docker
        docker network rm <nombre de la red>
        Ej: docker network rm platzinet

        Crear una redes en docker
        docker network create --attachable <nombre de la red>
        —attachable es para que otros contenedores se puedan unir a esta red
        Ej: docker network create --attachable platzinet

        Ver redes disponibles docker
        docker network ls
        bridge red por defecto y se conectan con un keyword link esta en desuso, compatibilidad (deprecated)
        host simula la red del computador que corre docker (no usar)
        none hacer que tenga el network desabilitado

        Ver contenedores en un red
        docker network inspect <nombre de la red>
        Ej: docker network inspect platzinet
        Detallar la busqueda
        docker network inspect -f '{{.Containers}}' platzinet

        Unir un contenedor a la red creada
        docker network connect <nombre de la red> <nombre del contenedor>
        Ej: docker network connect platzinet db
        docker run -d --name app -p 3000:3000 --env MONGO_URL=mongodb://db:27017/test platziapp

        -env variable de entorno
        db es el nombre del contenedor sin necesidad de pasar la ip del contenedor para la conexión

          Edward Acu

          Edward Acu

          student•
          hace 7 años

          solucionado, era puro error mio al no connectar el app a la platzired.

        José Tuzinkievicz

        José Tuzinkievicz

        student•
        hace 7 años

        Es fantástico esto, con razón hay programadores que crean cosas tan grandes en tan poco tiempo.

        guido.png

        Guido Arce

        Guido Arce

        student•
        hace 7 años

        Podemos ahorrarnos un paso e iniciar el contenedor ya con la red que necesitamos:
        docker run -d --name app -p 3000:3000 --env MONGO_URL=mongodb://db:27017/test --net=platzinet platziapp
        Con esto ya levantamos el contenedor conectado a la red platzinet

          Kevin Rafael Santacruz Burgos

          Kevin Rafael Santacruz Burgos

          student•
          hace 7 años

          gracias

        Damian Spizzirri

        Damian Spizzirri

        student•
        hace 7 años

        “Va como trompada” jajajajaja es un genio este tipo explicando.

        César Espitia

        César Espitia

        student•
        hace 6 años

        Yo incluí la variable de entorno MONGO_URL=mongodb://platzi/test dentro del Dockerfile, me quedó así, y funcionó perfecto:

        FROM node:latest WORKDIR /usr/src COPY *.json /usr/src/ RUN npm install COPY . /usr/src/ ENV MONGO_URL=mongodb://platzi/test EXPOSE 3000 CMD npx nodemon index.js
          Gedward Romo

          Gedward Romo

          student•
          hace 6 años

          recuerden que cada vez que modifiquen el archivo Dockerfile deben volver a construir la imagen, gracias por este atajo

        Antonio Madrid

        Antonio Madrid

        student•
        hace 6 años

        Que gran curso, me metí casi de casualidad y estoy flipando de la potencia de Docker y el contenido del mismo. Que bien explicado esta y que buen rollo transmite el profesor.

        Yor Jaggy Castaño Pino

        Yor Jaggy Castaño Pino

        teacher•
        hace 6 años

        Redes por defecto en docker:

        • bridge: red por defecto, o red puente, se solia usar con la instrucción link, la cual permitia enlazar contenedores a travez de la red. Sin embargo esta red esta en desuso.
        • host: ADVERTENCIA el uso de esta interfaz es de cuidado. Permite que el contenedor use la red por defecto de la maquina host. Es sensible a que si el contendor abre algun puerto, esto se ve replicado en la maquina host, generando asi posibles vulnerabilidades.
        • none: es similar al dev/null o hoyo negro de los sistemas unix. En este caso nos permite especificar que el contenedor no tiene salida o permiso para acceder o ser accedido por red.
        Andrea Itzel Juárez Ruiz

        Andrea Itzel Juárez Ruiz

        student•
        hace 6 años

        Como sugerencia, no se pueden ver bien los comandos que están hasta abajo porque si pausas el video, los tapa la barra de progreso. Saludos.

        Usuario anónimo

        Usuario anónimo

        user•
        hace 6 años

        ![](

        conexion db.jpg

        Nicolás Mayorga Vargas

        Nicolás Mayorga Vargas

        student•
        hace 6 años

        Esta clase estuvo increíble

        Paul Alarcon

        Paul Alarcon

        student•
        hace 7 años

        Les comparto mi dockerfile que funcionó:

        FROM node:10 COPY ["package.json", "/usr/src/"] WORKDIR /usr/src RUN ls -la RUN npm install -g nodemon RUN npm install -g npx RUN npm install COPY [".", "/usr/src/"] EXPOSE 3000 CMD ["npx","nodemon", "index.js"]
          Edwin Garcia

          Edwin Garcia

          student•
          hace 7 años

          Para sirve el -g?

          Oscar Vesga

          Oscar Vesga

          student•
          hace 7 años

          @Parsifal10 -g agrega la instalación de forma global en nodejs

        Wilson Fernando Antury Torres

        Wilson Fernando Antury Torres

        student•
        hace 6 años
        • docker network ls : lista las redes que existen en docker.
        • docker network create --attachable anturynet : crea una red.
        • “--attachable” permite que en un futuro otro contenedor se conecte a esta red.
        • docker run -d --name db mongo : corre contenedor mongo
        • docker network connect anturynet db : conecta el contenedor mongo a la red creada.
        • docker network inspect anturynet : inspecciona las características de la red creada.
        • docker run -d --name app -p 3000:3000 --env MONGO_URL=mongodb://db:27017/test anturyapp10 : corre el contenedor de nuestra app, con una variable de entorno para nuestra app.
        • docker network connect anturynet app : conectamos nuestro contenedor de nuestra app a la red creada.
        • Ahora podemos conectarnos desde nuestra app a la BD mongo en otro contenedor.
        Emilio Castro

        Emilio Castro

        student•
        hace 6 años

        Docker va como trompada!

        Waldo Araque

        Waldo Araque

        student•
        hace 7 años

        Es un plus que el profesor de este curso sea apasionado con Docker jaja

        Javier Avilés

        Javier Avilés

        student•
        hace 6 años

        DOCKER NETWORKING clase 19 Podemos conectar 2 contenedores de una manera fácil sencilla y rapida. Vamos a ver que con tan solo unos comandos tendremos la colaboración entre contenedores

        Docker nos permite conectar redes redes virtuales para conectar contenedores

        # docker network ls NETWORK ID NAME DRIVER SCOPE ab128322898a bridge bridge local # la red por defecto se conectan contenedores con LINK 94d168501cff host host local # la red de mi maquina f8fe521171ef none null local # el basurero de la RED

        Vamos a usar una nueva

        docker network create

        --attachable este flag permite que otros contenedores en el futuro que puedan conectarse a ella.

        La creamos entonces asi:

        docker network create --attachable platzinet

        Entonces vamos a crear nuestros contenedores para unirlos a esta red.

        1. creamos el contenedor de mongo
        # docker run -d --name db mongo
        1. conectamos el contenedor a la red
        # docker network connect platzinet db

        Lo podemos consultar con inspect

        # docker network inspect platzinet
        1. creamos el segundo contenedor con una variable adicional.
        # docker run -d --name app -p 3000:3000 --env MONGO_URL=mongodb://db:27017/test platziapp
        1. y lo unimos a la red
        # docker network connect platzinet app
          Gonzalo Amador Hernández

          Gonzalo Amador Hernández

          student•
          hace 5 años

          GRACIAS man!!! muy buen aporte!!!!

        Nicolas Lopez

        Nicolas Lopez

        student•
        hace 6 años

        pa pa como trompada JAJAJA

        Arlex Felipe Llanos Betancourt

        Arlex Felipe Llanos Betancourt

        student•
        hace 6 años

        Súper genial la forma de conectar con network los contenedores! 🔥🤯

        Germain Rafael Bueno Taguariparo

        Germain Rafael Bueno Taguariparo

        student•
        hace 7 años

        simplemente genial.
        A valido la pena cada peso jaja

        Iván Toro

        Iván Toro

        student•
        hace 7 años

        Docker networking docs

        Efraín Lerma

        Efraín Lerma

        student•
        hace 7 años

        Es de no creerse, este material no lo encuentras en cualquier lado, y mucho menos tan bien explicado ❤️ 💚💚💚💛💛