El documento describe el stack V.E.No.M, que incluye VueJS para el frontend, NodeJS y Express para el backend y API, y MongoDB para la base de datos. Explica que provee un entorno de desarrollo isomórfico con control sobre el frontend, backend y datos. Adicionalmente, el documento demuestra cómo dockerizar una aplicación V.E.No.M para aislar y orquestar sus componentes mediante Docker y Docker Compose.
Virtualización y Provisionamiento: Entornos de desarrollo con Vagrant y PuppetRichard Moya
Este documento describe el uso de las herramientas Vagrant y Puppet para la virtualización y provisionamiento de entornos de desarrollo. Explica cómo Vagrant permite crear máquinas virtuales rápidamente a partir de imágenes predefinidas y cómo Puppet gestiona de forma declarativa la configuración de dichas máquinas mediante la instalación de paquetes, módulos y la configuración de archivos y servicios. También presenta Puphpet, una herramienta gráfica que facilita la generación del archivo de configuración de Vag
Entornos de desarrollo para symfony2 con vagrant y puppetVicent Soria Durá
Vagrant y Puppet son herramientas que permiten crear entornos de desarrollo portables y reproducibles mediante la virtualización y la automatización de la configuración. Vagrant usa máquinas virtuales para ejecutar el mismo sistema operativo y software en diferentes equipos. Puppet automatiza y asegura que la configuración de los sistemas sea consistente mediante manifests que definen los recursos y su estado deseado. Juntos, Vagrant y Puppet ayudan a los desarrolladores a tener entornos idénticos en local y producción.
Docker y Kubernetes por partida doble. Sábado 19 con dos charlas sobre Docker y Kubernetes impartidas por Adrián García Casas y Javier Provecho respectivamente en la Agencia de Innovación de Valladolid
Este documento contiene información sobre Docker y su uso. Brevemente explica que Docker permite empaquetar aplicaciones con sus dependencias para facilitar el desarrollo de software, utilizando tecnología como Linux Containers para aislar los contenedores. También proporciona ejemplos básicos de comandos de Docker como "docker run" e introduce conceptos como Dockerfile, imágenes y repositorios.
Workshop de introducción a docker, desde lo más básico hasta un dockerfile de producción no muy sofisticado.
Incluye link a un repositorio para seguir un ejercicio a lo largo de la presentación
Orquestadores para las cuatro estaciones (swarm, kubernetes, mesos y rancher)Adrian Garcia Casas
Slides de como orquestas despliegues con Docker Swarm y Rancher. Ejemplo sencillos de cómo hacerlo y disponer de persistencia de datos en los casos que nos interese.
Este documento proporciona una introducción a Ruby on Rails, incluyendo qué es, para qué se usa, cómo se instala en diferentes sistemas operativos como Linux, OSX y Windows, y los pasos básicos para crear una primera aplicación web simple en Rails.
Virtualización y Provisionamiento: Entornos de desarrollo con Vagrant y PuppetRichard Moya
Este documento describe el uso de las herramientas Vagrant y Puppet para la virtualización y provisionamiento de entornos de desarrollo. Explica cómo Vagrant permite crear máquinas virtuales rápidamente a partir de imágenes predefinidas y cómo Puppet gestiona de forma declarativa la configuración de dichas máquinas mediante la instalación de paquetes, módulos y la configuración de archivos y servicios. También presenta Puphpet, una herramienta gráfica que facilita la generación del archivo de configuración de Vag
Entornos de desarrollo para symfony2 con vagrant y puppetVicent Soria Durá
Vagrant y Puppet son herramientas que permiten crear entornos de desarrollo portables y reproducibles mediante la virtualización y la automatización de la configuración. Vagrant usa máquinas virtuales para ejecutar el mismo sistema operativo y software en diferentes equipos. Puppet automatiza y asegura que la configuración de los sistemas sea consistente mediante manifests que definen los recursos y su estado deseado. Juntos, Vagrant y Puppet ayudan a los desarrolladores a tener entornos idénticos en local y producción.
Docker y Kubernetes por partida doble. Sábado 19 con dos charlas sobre Docker y Kubernetes impartidas por Adrián García Casas y Javier Provecho respectivamente en la Agencia de Innovación de Valladolid
Este documento contiene información sobre Docker y su uso. Brevemente explica que Docker permite empaquetar aplicaciones con sus dependencias para facilitar el desarrollo de software, utilizando tecnología como Linux Containers para aislar los contenedores. También proporciona ejemplos básicos de comandos de Docker como "docker run" e introduce conceptos como Dockerfile, imágenes y repositorios.
Workshop de introducción a docker, desde lo más básico hasta un dockerfile de producción no muy sofisticado.
Incluye link a un repositorio para seguir un ejercicio a lo largo de la presentación
Orquestadores para las cuatro estaciones (swarm, kubernetes, mesos y rancher)Adrian Garcia Casas
Slides de como orquestas despliegues con Docker Swarm y Rancher. Ejemplo sencillos de cómo hacerlo y disponer de persistencia de datos en los casos que nos interese.
Este documento proporciona una introducción a Ruby on Rails, incluyendo qué es, para qué se usa, cómo se instala en diferentes sistemas operativos como Linux, OSX y Windows, y los pasos básicos para crear una primera aplicación web simple en Rails.
Docker orientado al desarrollo de aplicaciones con NodeJSJan Sanchez
Docker y Docker Compose permiten administrar fácilmente aplicaciones con múltiples servicios y versiones de Node.js. Docker Compose define y ejecuta aplicaciones multi-contenedor mediante un archivo YAML, permitiendo conectar y ejecutar contenedores de forma sencilla. Esto facilita el desarrollo, pruebas y producción de aplicaciones con Node.js.
WordPress, Nginx, Ghost y Telegram con Docker - I Meetup Docker Córdoba - Quaipquaip
El documento describe cómo generar una imagen Docker de WordPress con Nginx. Se explica el proceso de crear un Dockerfile para instalar WordPress, MySQL, PHP y Nginx en un contenedor. Luego se muestra cómo crear otro contenedor con Nginx que actúe como proxy inverso para acceder a las instancias de WordPress de forma independiente a través de URLs personalizadas. Finalmente, se presentan ejemplos adicionales de cómo instalar Ghost y Telegram también usando Docker.
Este documento describe el uso de Docker y CoreOS para dividir y administrar aplicaciones. Explica qué es Docker y por qué usarlo, así como qué es CoreOS y cómo usar Fleetctl para administrar servicios en un clúster CoreOS. También cubre cómo vincular contenedores Docker para ejecutar servicios de MongoDB y Node.js.
Este documento describe cómo configurar un entorno de integración continua utilizando las herramientas Jenkins, Subversion y Sonar. Explica cómo instalar y configurar Subversion para almacenar el código fuente, Jenkins para automatizar las compilaciones, e integra el plugin Sonar para realizar análisis de calidad del código después de cada compilación. El objetivo final es permitir prácticas de inspección y integración continua para identificar errores de forma rápida y mantener un build estable.
El documento habla sobre los conceptos avanzados de Docker como volúmenes y enlaces. Explica que los volúmenes permiten la persistencia de datos al almacenarlos fuera del contenedor y que pueden crearse mediante instrucciones en el Dockerfile o durante la creación del contenedor. También cubre cómo realizar copias de seguridad y restauraciones de volúmenes. En cuanto a los enlaces, explica que permiten la interconexión de contenedores al crear un contenedor con la base de datos, montar el volumen de datos y
Este documento proporciona una guía para instalar y configurar Symfony2. Explica cómo crear páginas mediante rutas, controladores y plantillas, y recomienda instalar XAMPP y Composer para configurar el entorno de desarrollo de Symfony2 en local. También describe la estructura básica de directorios de un proyecto Symfony2 y un bundle.
Este documento proporciona una guía práctica sobre el uso de Vagrant y Docker. Explica qué son Vagrant, Docker y VirtualBox, e incluye instrucciones detalladas sobre cómo instalarlos y usar sus comandos y características básicas como levantar máquinas virtuales, compartir carpetas, publicar puertos y crear e implementar contenedores de Docker personalizados.
Un recorrido por las herramientas de software libre que uso cada día, en los ...Christian Rodriguez
Este documento presenta la filosofía de Christian Rodriguez sobre el uso de software libre. Describe sus inicios con el SL y cómo lo utiliza en diferentes ámbitos de su vida, incluyendo la universidad, el hogar y el trabajo. Explica conceptos clave como las cuatro libertades del software libre y cómo es posible ganar dinero desarrollando SL. Concluye señalando que aunque a veces no es posible usar SL, siempre hay alternativas para resolver los problemas de manera ética.
CRUD básico con Symfony. Esta presentación es una continuación de lo contado en la II Symfony Zaragoza. Explica un ejemplo sencillo de un CRUD para mostrar como realizar modelos, controladores, vistas, formularios, etc.
Este documento resume Docker Swarm, una herramienta para orquestar contenedores en la nube. Explica brevemente qué es un contenedor y luego describe Docker Swarm como una forma de gestionar de forma distribuida un clúster de nodos Docker. También cubre conceptos clave como servicios, redes, registros de imágenes, monitoreo y despliegue de aplicaciones mediante stacks y Docker Compose.
Docker permite encapsular cualquier información y hacerla portátil, autosuficiente y ligera de forma que se pueda ejecutar de manera consistente en cualquier hardware. Esto resuelve el problema de tener que adaptar aplicaciones a múltiples entornos y "stacks", permitiendo "crear una vez y ejecutar en cualquier parte". Docker funciona creando contenedores ligeros que comparten recursos del sistema operativo.
Este documento presenta una introducción a Docker. Explica conceptos clave como contenedores, imágenes y registros. Detalla los comandos básicos de Docker como docker run, docker build y docker pull. También cubre temas como la creación de imágenes, el uso de volúmenes, la vinculación de contenedores y la orquestación con Kubernetes. Finalmente, explora cómo Docker puede usarse para implementar microservicios y facilitar la integración continua.
Con Docker podemos envolver una aplicación dentro de un contenedor con un sistema de ficheros completo y con todo lo que necesita para funcionar, de esta forma la aplicación siempre se ejecutará igual independientemente del entorno en el que se encuentre.
En esta charla empezaremos con una introducción a Docker para después pasar a explicar con ejemplos cómo podemos crear contenedores que repliquen el software existente en producción, de esta forma el entorno de desarrollo de todo nuestro equipo será siempre consistente con el entorno de producción.
Docker es una plataforma abierta para construir, transportar y ejecutar aplicaciones distribuidas.
El objetivo de esta charla es dar a conocer la plataforma, su arquitectura y componentes. Para ello se parte del problema que trata de resolver y sus ventajas e inconvenientes con otras soluciones existentes.
Maven es una herramienta para la gestión y construcción de proyectos Java creada por Jason Van Zyl. Permite describir el proyecto, sus dependencias y configuración a través de un archivo XML llamado pom.xml. Maven usa repositorios para descargar dependencias y gestiona el ciclo de vida del proyecto a través de fases como compilación, pruebas y empaquetado.
Este documento presenta una introducción a Docker, incluyendo: qué es Docker y sus principales componentes como imágenes, contenedores y Dockerfile; la instalación de Docker; consideraciones para trabajar con Docker como mantener los contenedores efímeros y evitar que crezcan; el uso de volúmenes para almacenar datos de forma persistente; y Docker Compose, una herramienta para definir y ejecutar aplicaciones compuestas por múltiples contenedores.
Docker permite crear contenedores ligeros que ofrecen portabilidad, ligereza y autosuficiencia. Un documento explica cómo instalar Docker y crear un entorno de desarrollo para WordPress usando Docker Compose con contenedores para MySQL y WordPress. También describe cómo crear una imagen ISO de WordPress en Debian para implementarla en producción.
Symfony es un framework de PHP que nos permite crear aplicaciones web y que está construido usando como base más de 30 componentes reutilizables y desacoplados.
En esta charla hablaremos sobre la última versión de este framework, su filosofía, su funcionamiento en general, repasaremos algunos de sus componentes y expondremos algunas de las buenas prácticas, todo ello acompañado de ejemplos.
Docker 101 Workshop - WomenWhoCode Buenos AiresBel Rey
Este documento explica Docker, un proyecto de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software. Docker crea una computadora virtual dentro de la computadora anfitrión con todo lo necesario para ejecutar la aplicación. El documento también describe conceptos básicos como contenedores, imágenes, Dockerfile y comandos como docker build, docker run y docker ps.
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Keopx
El documento presenta una introducción sobre Docker. Explica que Docker es un proyecto de código abierto que permite crear, empaquetar y distribuir aplicaciones dentro de contenedores de software livianos. También describe algunas ventajas clave de Docker como su eficiencia en recursos y facilidad de transporte y despliegue de contenedores en comparación con máquinas virtuales. Finalmente, ofrece una demostración práctica de Docker y su uso en el desarrollo de aplicaciones.
"Introducción a Docker".
Global Mentor Day UPM. Noviembre 2016.
Ángel Barrera, Ingeniero de Software en BEEVA.
Encuéntranos en www.beeva.com y labs.beeva.com
Docker orientado al desarrollo de aplicaciones con NodeJSJan Sanchez
Docker y Docker Compose permiten administrar fácilmente aplicaciones con múltiples servicios y versiones de Node.js. Docker Compose define y ejecuta aplicaciones multi-contenedor mediante un archivo YAML, permitiendo conectar y ejecutar contenedores de forma sencilla. Esto facilita el desarrollo, pruebas y producción de aplicaciones con Node.js.
WordPress, Nginx, Ghost y Telegram con Docker - I Meetup Docker Córdoba - Quaipquaip
El documento describe cómo generar una imagen Docker de WordPress con Nginx. Se explica el proceso de crear un Dockerfile para instalar WordPress, MySQL, PHP y Nginx en un contenedor. Luego se muestra cómo crear otro contenedor con Nginx que actúe como proxy inverso para acceder a las instancias de WordPress de forma independiente a través de URLs personalizadas. Finalmente, se presentan ejemplos adicionales de cómo instalar Ghost y Telegram también usando Docker.
Este documento describe el uso de Docker y CoreOS para dividir y administrar aplicaciones. Explica qué es Docker y por qué usarlo, así como qué es CoreOS y cómo usar Fleetctl para administrar servicios en un clúster CoreOS. También cubre cómo vincular contenedores Docker para ejecutar servicios de MongoDB y Node.js.
Este documento describe cómo configurar un entorno de integración continua utilizando las herramientas Jenkins, Subversion y Sonar. Explica cómo instalar y configurar Subversion para almacenar el código fuente, Jenkins para automatizar las compilaciones, e integra el plugin Sonar para realizar análisis de calidad del código después de cada compilación. El objetivo final es permitir prácticas de inspección y integración continua para identificar errores de forma rápida y mantener un build estable.
El documento habla sobre los conceptos avanzados de Docker como volúmenes y enlaces. Explica que los volúmenes permiten la persistencia de datos al almacenarlos fuera del contenedor y que pueden crearse mediante instrucciones en el Dockerfile o durante la creación del contenedor. También cubre cómo realizar copias de seguridad y restauraciones de volúmenes. En cuanto a los enlaces, explica que permiten la interconexión de contenedores al crear un contenedor con la base de datos, montar el volumen de datos y
Este documento proporciona una guía para instalar y configurar Symfony2. Explica cómo crear páginas mediante rutas, controladores y plantillas, y recomienda instalar XAMPP y Composer para configurar el entorno de desarrollo de Symfony2 en local. También describe la estructura básica de directorios de un proyecto Symfony2 y un bundle.
Este documento proporciona una guía práctica sobre el uso de Vagrant y Docker. Explica qué son Vagrant, Docker y VirtualBox, e incluye instrucciones detalladas sobre cómo instalarlos y usar sus comandos y características básicas como levantar máquinas virtuales, compartir carpetas, publicar puertos y crear e implementar contenedores de Docker personalizados.
Un recorrido por las herramientas de software libre que uso cada día, en los ...Christian Rodriguez
Este documento presenta la filosofía de Christian Rodriguez sobre el uso de software libre. Describe sus inicios con el SL y cómo lo utiliza en diferentes ámbitos de su vida, incluyendo la universidad, el hogar y el trabajo. Explica conceptos clave como las cuatro libertades del software libre y cómo es posible ganar dinero desarrollando SL. Concluye señalando que aunque a veces no es posible usar SL, siempre hay alternativas para resolver los problemas de manera ética.
CRUD básico con Symfony. Esta presentación es una continuación de lo contado en la II Symfony Zaragoza. Explica un ejemplo sencillo de un CRUD para mostrar como realizar modelos, controladores, vistas, formularios, etc.
Este documento resume Docker Swarm, una herramienta para orquestar contenedores en la nube. Explica brevemente qué es un contenedor y luego describe Docker Swarm como una forma de gestionar de forma distribuida un clúster de nodos Docker. También cubre conceptos clave como servicios, redes, registros de imágenes, monitoreo y despliegue de aplicaciones mediante stacks y Docker Compose.
Docker permite encapsular cualquier información y hacerla portátil, autosuficiente y ligera de forma que se pueda ejecutar de manera consistente en cualquier hardware. Esto resuelve el problema de tener que adaptar aplicaciones a múltiples entornos y "stacks", permitiendo "crear una vez y ejecutar en cualquier parte". Docker funciona creando contenedores ligeros que comparten recursos del sistema operativo.
Este documento presenta una introducción a Docker. Explica conceptos clave como contenedores, imágenes y registros. Detalla los comandos básicos de Docker como docker run, docker build y docker pull. También cubre temas como la creación de imágenes, el uso de volúmenes, la vinculación de contenedores y la orquestación con Kubernetes. Finalmente, explora cómo Docker puede usarse para implementar microservicios y facilitar la integración continua.
Con Docker podemos envolver una aplicación dentro de un contenedor con un sistema de ficheros completo y con todo lo que necesita para funcionar, de esta forma la aplicación siempre se ejecutará igual independientemente del entorno en el que se encuentre.
En esta charla empezaremos con una introducción a Docker para después pasar a explicar con ejemplos cómo podemos crear contenedores que repliquen el software existente en producción, de esta forma el entorno de desarrollo de todo nuestro equipo será siempre consistente con el entorno de producción.
Docker es una plataforma abierta para construir, transportar y ejecutar aplicaciones distribuidas.
El objetivo de esta charla es dar a conocer la plataforma, su arquitectura y componentes. Para ello se parte del problema que trata de resolver y sus ventajas e inconvenientes con otras soluciones existentes.
Maven es una herramienta para la gestión y construcción de proyectos Java creada por Jason Van Zyl. Permite describir el proyecto, sus dependencias y configuración a través de un archivo XML llamado pom.xml. Maven usa repositorios para descargar dependencias y gestiona el ciclo de vida del proyecto a través de fases como compilación, pruebas y empaquetado.
Este documento presenta una introducción a Docker, incluyendo: qué es Docker y sus principales componentes como imágenes, contenedores y Dockerfile; la instalación de Docker; consideraciones para trabajar con Docker como mantener los contenedores efímeros y evitar que crezcan; el uso de volúmenes para almacenar datos de forma persistente; y Docker Compose, una herramienta para definir y ejecutar aplicaciones compuestas por múltiples contenedores.
Docker permite crear contenedores ligeros que ofrecen portabilidad, ligereza y autosuficiencia. Un documento explica cómo instalar Docker y crear un entorno de desarrollo para WordPress usando Docker Compose con contenedores para MySQL y WordPress. También describe cómo crear una imagen ISO de WordPress en Debian para implementarla en producción.
Symfony es un framework de PHP que nos permite crear aplicaciones web y que está construido usando como base más de 30 componentes reutilizables y desacoplados.
En esta charla hablaremos sobre la última versión de este framework, su filosofía, su funcionamiento en general, repasaremos algunos de sus componentes y expondremos algunas de las buenas prácticas, todo ello acompañado de ejemplos.
Docker 101 Workshop - WomenWhoCode Buenos AiresBel Rey
Este documento explica Docker, un proyecto de código abierto que automatiza el despliegue de aplicaciones dentro de contenedores de software. Docker crea una computadora virtual dentro de la computadora anfitrión con todo lo necesario para ejecutar la aplicación. El documento también describe conceptos básicos como contenedores, imágenes, Dockerfile y comandos como docker build, docker run y docker ps.
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Keopx
El documento presenta una introducción sobre Docker. Explica que Docker es un proyecto de código abierto que permite crear, empaquetar y distribuir aplicaciones dentro de contenedores de software livianos. También describe algunas ventajas clave de Docker como su eficiencia en recursos y facilidad de transporte y despliegue de contenedores en comparación con máquinas virtuales. Finalmente, ofrece una demostración práctica de Docker y su uso en el desarrollo de aplicaciones.
"Introducción a Docker".
Global Mentor Day UPM. Noviembre 2016.
Ángel Barrera, Ingeniero de Software en BEEVA.
Encuéntranos en www.beeva.com y labs.beeva.com
inLab FIB MeteorJS workshop by uLab UPC - Telefonica I+DinLabFIB
Este documento proporciona información sobre Meteor JS, una plataforma open source para crear aplicaciones web. Explica que Meteor utiliza DDP para transferir datos entre el cliente y el servidor, con Node.js y MongoDB en el servidor. También describe algunas ventajas como la reactividad y la compensación de latencia, así como desventajas como posibles problemas de seguridad. Finalmente, ofrece instrucciones sobre instalación, estructura de proyectos, paquetes y despliegue de aplicaciones Meteor.
Este documento presenta una introducción a Docker. Explica conceptos clave como contenedores, imágenes, Dockerfile y Docker Hub. También describe cómo crear una aplicación Spring Boot de ejemplo, generar una imagen Docker de la aplicación usando Maven, y ejecutar la aplicación dentro de un contenedor Docker. Finalmente, cubre temas como enviar parámetros a imágenes Docker y usar Docker Compose para ejecutar múltiples contenedores.
Este documento ofrece una introducción a Docker, explicando cómo instalarlo, crear contenedores y aplicaciones multi-contenedor, trabajar con imágenes y volúmenes, y gestionar datos persistentes. Se detallan los comandos básicos de Docker y conceptos clave como contenedores, imágenes, enlaces y Docker Hub.
En este Meetup nos metemos en harina haciendo un repaso de los conceptos principales relacionados con docker y aplicando los casos de uso típicos con contenedores, siempre desde la perspectiva del programador.
El Meetup está dividido en 3 secciones:
* Docker como herramienta de ayuda a la programación
* Docker como sistema de empaquetado de nuestras apps.
* Docker como entorno de despliegue (docker-compose).
Casi todos los desarrolladores, han oído hablar de Docker en mayor o menor medida,pero no tantos han podido ponerlo en práctica.
Hacemos un repaso de los conceptos principales relacionados con docker, aplicando los casos de uso típicos con contenedores, siempre desde la perspectiva del programador.
* Docker como herramienta de ayuda a la programación
* Docker como sistema de empaquetado de nuestras apps.
* Docker como entorno de despliegue (docker-compose).
El documento explica Docker, una herramienta de código abierto que permite crear contenedores ligeros para aplicaciones. Los contenedores Docker son portables, ligeros y autosuficientes. El documento también describe cómo usar Docker y Docker Compose para crear un entorno de desarrollo para WordPress, incluyendo contenedores para MySQL y WordPress, y montar volúmenes para almacenar datos y archivos.
Este documento explica conceptos básicos sobre Docker como contenedores, imágenes, Dockerfile y cómo crear e interactuar con contenedores. Detalla los comandos principales de Docker como docker build, docker run, docker ps y docker images y sus usos para crear imágenes y contenedores a partir de un Dockerfile.
Charla impartida en Codemotion 2016.
Con Docker podremos configurar los entornos de nuestras aplicaciones de forma programática y además que todos ejecuten el proyecto en el mismo entorno sin que el SO sea un problema y gastando menos recursos de la máquina. Veremos como hacerlo y poder utilizarlo en nuestro día a día de una manera muy sencilla.
Video: https://youtu.be/fVYyCQeZZNs
Docker permite la creación y ejecución de contenedores ligeros que comparten el kernel del sistema anfitrión. Docker Engine es una plataforma para aplicaciones distribuidas que permite crear, probar e implementar aplicaciones rápidamente. Docker Compose facilita la orquestación de múltiples contenedores mediante la configuración en un archivo YAML, mientras que Docker Machine permite la creación y administración de hosts Docker virtuales. Docker Swarm habilita la agrupación de nodos Docker en un clúster administrado de forma nativa.
Este documento presenta una introducción al uso de contenedores Docker para el despliegue de servicios geoespaciales. Explica conceptos básicos como qué es Docker, imágenes y contenedores, y muestra demos prácticas de cómo desplegar servicios individuales como GeoNetwork y cómo articular múltiples servicios usando Docker Compose. También cubre temas como provisionamiento de máquinas virtuales con Docker Machine, clústeres con Docker Swarm, y cómo lograr sistemas autosostenibles.
Este documento describe cómo usar Docker para configurar un entorno de desarrollo de WordPress. Docker permite crear contenedores ligeros que corren aplicaciones y sus dependencias, como una base de datos MySQL, WordPress e incluso PhpMyAdmin. El documento explica cómo crear e iniciar estos contenedores individualmente usando comandos de Docker, o mediante un archivo docker-compose.yml para definir y ejecutar múltiples servicios de una vez.
Breve introducción práctica al DevOps - (es) 2021_03_18Young Suk Ahn Park
DevOps es un cambio de cultura que acelera el ciclo de desarrollo de software sin comprometer la calidad. Esta diapositiva hace una breve introducción al DevOps con ejemplos concretos de proceso y herramientas.
Docker Ecosystem: Engine, Compose, Machine, Swarm, RegistryMario IC
El documento presenta una introducción a Docker y sus principales componentes como Docker Engine, Docker Compose, Docker Machine, Docker Swarm y Docker Registry. Explica que Docker Engine es una plataforma para aplicaciones distribuidas que permite crear y ejecutar contenedores de forma aislada. Docker Compose facilita la orquestación de múltiples contenedores mediante archivos de configuración YAML. Docker Machine permite crear y gestionar nodos Docker virtuales y Docker Swarm proporciona funcionalidades de clústeres para contenedores. Por último, Docker Registry permite almacen
Este documento proporciona recursos para aprender Docker, incluyendo documentación, libros, videos de YouTube y la comunidad Docker. Explica cómo instalar Docker en Windows, Mac y Linux, y cubre herramientas como Docker Desktop y Docker Hub. También describe los planes de suscripción disponibles para Docker.
Este documento proporciona una introducción a Docker y Docker Compose. Explica qué es Docker, cómo funciona en comparación con las máquinas virtuales, sus ventajas para desarrolladores y administradores, y proporciona ejemplos de cómo descargar imágenes, ejecutar contenedores, instalar paquetes, guardar cambios, y más.
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...micarnavaltupatrimon
Mi Carnaval es la plataforma que permite conectar al usuario con la cultura y la emoción del Carnaval de Blancos y Negros en la ciudad de Pasto, esta plataforma brinda una amplia oferta de productos, servicios, tiquetería e información relevante para generarle valor al usuario, además, la plataforma realiza un levantamiento de datos de los espectadores que se registran, capturando su actividad e información relevante para generar la analítica demográfica del evento en tiempo real, con estos datos se generan modelos predictivos, que permiten una mejor preparación y organización del evento, de esta manera ayudando a reducir la congestión, las largas filas y, así como a identificar áreas de alto riesgo de delincuencia y otros problemas de seguridad.
Mi Carnaval, Aplicación web para la gestión del carnaval y la predicción basa...micarnavaltupatrimon
Mi Carnaval es la plataforma que permite conectar al usuario con la cultura y la emoción del Carnaval de Blancos y Negros en la ciudad de Pasto, esta plataforma brinda una amplia oferta de productos, servicios, tiquetería e información relevante para generarle valor al usuario, además, la plataforma realiza un levantamiento de datos de los espectadores que se registran, capturando su actividad e información relevante para generar la analítica demográfica del evento en tiempo real, con estos datos se generan modelos predictivos, que permiten una mejor preparación y organización del evento, de esta manera ayudando a reducir la congestión, las largas filas y, así como a identificar áreas de alto riesgo de delincuencia y otros problemas de seguridad.
Buscador de Eventos y Fiestas en España - Buscafiestaholabuscafiesta
Buscafiesta.es es el buscador líder en España para fiestas y eventos, diseñado para satisfacer las necesidades tanto de organizadores como de asistentes. Este innovador software ofrece una plataforma integral que permite a los organizadores de eventos añadir, gestionar y promocionar sus actividades de manera totalmente autónoma, facilitando la visibilidad y escalabilidad de sus eventos.
Buscafiesta.es no solo conecta a los organizadores con su público objetivo, sino que también ofrece herramientas de marketing y análisis que ayudan a maximizar el impacto de cada evento. Ya sea para una fiesta local, un concierto multitudinario o un evento corporativo, Buscafiesta.es es la solución definitiva para hacer de cada evento un éxito rotundo.
3. Un poco de historia
En 2009 irrumpen nodejs y mongodb.
En 2010 aparecen AngulaJS y Express.
Poco después aparecen MEAN o METEOR.
Los stacks de la década pasada, LAMP y WAMP junto con ExtJS y
jQuery, dan paso en esta década a los stacks de desarrollo javascript:
MEAN, METEOR, MERN
Justo llegando al final, con la irrupción de VueJS aparece el stack
VENoM
4. ¿Preguntas?
⊗ Qué es
⊗ Para qué
⊗ Por qué
⊗ Qué se requiere
⊗ Qué desventajas tiene
⊗ Qué aporta en el mundo Cloud
5. ¿Qué es?
V.E.No.M. es el acrónimo de VueJS Express
NodeJS y MongoDB
Es un stack completo de desarrollo de
aplicaciones web.
⊗ VueJS para el frontend
⊗ NodeJS con Express para el backend / API
⊗ MongoDB para la base de datos
Eso como base. Junto a ellos pueden aparecer
otras muchas dependencias.
6. ¿Para qué?
Para tener un entorno isomórfico de
desarrollo javascript.
Para tener el control de lo que haces en
cliente y en servidor.
Para tener el control de tus datos.
7. ¿Por qué?
⊗ Porque al tener un desarrollo isomórfico puedes reutilizar
clases, objetos, funciones e incluso dependencias… en front y
en back.
⊗ Porque conforme tu aplicación crezca tendrás el control para
implementar esas necesidades que van surgiendo
inevitablemente.
⊗ Porque la base de datos es tuya y tener los datos alojados en
sistemas de terceros supone asumir sus normas.
8. ¿Qué “desventajas” tiene?
⊗ Requiere de conocimientos de front y back.
⊗ Tienes que ser Juan Palomo.
⊗ Como al personaje del comic, te acaba
poseyendo.
9. ¿Podemos mejorar el stack?
Dockerizandolo, Porque así:
⊗ Mantiene las diferentes partes aisladas.
⊗ Entregas un desarrollo que garantizas que
funciona.
⊗ Es escalable.
11. ¿Qué vamos a hacer?
1. ¡Vamos a usar VENoM!.
2. scaffolding de un proyecto por defecto de Vue.
3. Un servidor de un API Rest sencillo.
4. Un servidor de mongoDB como base de datos.
5. Docker para separar los entornos de desarrollo, api y base de
datos.
6. Docker-compose para orquestar todos los contenedores Docker.
12. Lo básico
1. Instalamos docker y docker-compose:
# sudo apt install docker docker-compose
2. Añadimos al usuario de ubuntu al grupo docker y reiniciamos
# sudo usermod -aG docker $USER
3. En https://hub.docker.com/ podemos buscar imagenes de docker ya
preparadas
4. Podemos comprobar qué imágenes tenemos con:
# docker images
13. Instalación de node y Vue
# sudo apt install nodejs
o bien
# curl -OJ
https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.xz
# tar -xvf node-v10.13.0-linux-x64.tar.xz
# sudo mv node-v10.13.0-linux-x64 /opt
# sudo chown $USER.$USER /opt/node-v10.13.0-linux-x64
# sudo ln -s /opt/node-v10.13.0-linux-x64 /opt/node
# export PATH=$PATH:/opt/node/bin/:/opt/node/lib/node_modules/
# npm install -g @vue/cli
# vue -V
14. Creamos workspaces.
Instalamos Express
# mkdir proyecto
# cd proyecto
# mkdir api
# cd api
# npm init -y
# npm install --save express body-parser method-override
15. Creamos proyecto en Vue
# cd ..
# npm install -g @vue/cli
# vue -V
# vue create front -d
# cd front
# npm run serve
16. Creamos Dockerfile.front para vue
# cd ..
Creamos y editamos Dockerfile.front
FROM node:8
WORKDIR /usr/src/app
EXPOSE 8080
CMD [ "npm", "run", “serve” ]
17. Construimos y ejecutamos
Docker para vue
Para construir la imagen de docker:
# docker build -f Dockerfile.front -t front-vue .
Para crear el contenedor a partir de esa imagen:
# docker run -d --name "front-vue-container" -p 8080:8080 -v
$(pwd)/front:/usr/src/app front-vue
Comprobamos:
# docker ps
# docker inspect front-vue
# docker logs front-vue
18. Creamos Dockerfile.front2 para vue
Podemos hacer que se instale Vue en el contenedor, para usar solamente
las carpetas con el código. Creamos y editamos el fichero
Dockerfile.front2:
FROM node:8
WORKDIR /usr/src/app
COPY front/package.json ./
COPY front/package-lock.json ./
RUN npm install
EXPOSE 8080
CMD [ "npm", "run", “serve” ]
19. Construimos y
ejecutamos Docker para
vuePara construir la imagen de docker:
# docker build -f Dockerfile.front2 -t front-vue2 .
Para crear el contenedor a partir de esa imagen:
# docker run -d --name "front-vue-container2" -p 8080:8080 -v
$(pwd)/front/public:/usr/src/app/public -v
$(pwd)/front/src:/usr/src/app/src front-vue2
Comprobamos:
# docker ps
# docker inspect front-vue
# docker logs front-vue
21. Construimos el api con
node y express
const express = require('express');
const app = express();
const PORT = 3000;
app.get('/', function(req, res) {
res.json({"hello": "express with mongo"});
});
app.get('/misdatos', function(req, res) {
res.json({"misdatos": "son estos"});
});
app.listen(PORT, function() {
console.log('Your node js server is running on PORT:', PORT);
});
22. Construimos el contenedor del
api
Vamos a crear un nuevo contenedor con node y express.
Creamos el fichero Dockerfile.api:
FROM node:8
WORKDIR /usr/src/app
COPY api/package.json ./
COPY api/package-lock.json ./
COPY api/index.js ./
RUN npm install
EXPOSE 3000
CMD [ "node", "index.js" ]
23. Construimos el contenedor del
api
Para construir la imagen de docker:
# docker build -f Dockerfile.api -t api-express .
Para crear el contenedor a partir de esa imagen:
# docker run -d --name "api-express-container" -p 3000:3000 api-express
Comprobamos:
# docker ps
# docker inspect api-express
# docker logs api-express
24. Construimos el
contenedor de mongo
Para la parte de mongo, como no vamos a configurar nada en nuestro
Dockerfile podemos hacer simplemente:
# docker pull mongo
Esto nos baja la imagen de mongodb que luego podremos usar para construir
nuestro contenedor.
25. Construimos el
contenedor de mongo
Para crear el contenedor a partir de esa imagen:
# docker run -d --name "mongo-container" -it mongo
Comprobamos:
# docker ps
# docker inspect mongo
# docker logs mongo
# mongo
>
27. Configuración de Docker-compose
La configuración de docker-compose se hace mediante un fichero .yml
En este indicamos las build de los contenedores docker que vamos a usar y la relación
entre ellos.
29. Construimos el contenedor del
api y mongo
Lo primero nos aseguramos que no tenemos contenedores/imagenes creados.
Para generar los contenedores coordinados con docker-compose:
# docker-compose up -d
Comprobamos:
# docker-compose ps
Probamos a entrar en:
http://localhost:8080
http://localhost:3000
http://localhost:27017
30. Cuando terminemos nuestra app...
⊗ Al terminar deberemos cambiar el dockerfile de VUE para que clone
un repo y para que haga la build.
⊗ Y en vez de usar el servidor de vue-cli lo ideal sería usar un servidor
como NGINX
⊗ Si usamos el servidor NGINX podemos usar este para que haga de
proxy con nuestro servidor REST, de manera que todas las llamadas,
por ejemplo a /api, las encamine hacia el puerto 3000.
⊗ Lo que entregamos para subir a otros entornos pre-productivos es
un repo que contiene los ficheros Dockerfile y docker-
compones.yml
⊗ Con esto garantizamos que siempre, siempre, va a funcionar en
cualquier lado.
31. Se termino la frase “En mi local funciona”
Si funciona en tu Docker, siempre funciona
32. BONUS TRACK
Demo de una app completa.
He usado un fork del vue-pokedex de @rubnvp
(https://github.com/manufosela/vue-pokedex)
Para el backend, lo complemento con Nginx
Para la base de datos lo complemento con Mongoose
Ya tenemos el entorno de desarrollo de la parte Front con Vue. Ahora preparemos el entorno para el api y la base de datos
La base de datos vamos a montarla directamente con un contenedor, porque node, vue… lo uso no me importa tenerlos instalados en mi portatil. Pero una base datos mongo… no me apetece.
Ya tenemos el entorno de desarrollo de la parte Front con Vue. Ahora preparemos el entorno para el api y la base de datos
Ya tenemos el entorno de desarrollo de la parte Front con Vue. Ahora preparemos el entorno para el api y la base de datos
Ya tenemos el entorno de desarrollo de la parte Front con Vue. Ahora preparemos el entorno para el api y la base de datos