docker ecosystem - part ii - compose
TRANSCRIPT
![Page 1: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/1.jpg)
Docker Ecosystem - Part II
by @mario21ic
TalleresUNT
![Page 2: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/2.jpg)
AgendaDocker Compose
Demo
Preguntas
![Page 3: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/3.jpg)
Docker Compose
![Page 4: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/4.jpg)
ProblemaContainers aislados
Configurar la ip cada vez que reinicia
Compartir datos de configuracion
Construir cada Image desde Dockerfile
Escalar un container
![Page 5: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/5.jpg)
Docker ComposePermite una facil orchestacion entre containers
Desde 1.6 tiene un dns embebido
Configuracion en un docker-compose.yml con posibilidad de hacer override docker-compose.override.yml y extender docker-compose.admin-task.yml
Desarrollado en Python
Instalacion: pip install docker-compose
![Page 6: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/6.jpg)
docker-compose.ymlversion: '2'services: nginx: build: . volumes: - ./html:/usr/share/nginx/html ports: - 8080:80
![Page 7: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/7.jpg)
Docker ComposeDescargar images:
Descargar service de un service:
Revisar logs:
$ docker-compose pull <service>
$ docker-compose pull
$ docker-compose logs
![Page 8: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/8.jpg)
Docker ComposeConstruir images:
Contruir image de un service:
Contruir y correr todos los services:
$ docker-compose build <service>
$ docker-compose build
$ docker-compose up
![Page 9: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/9.jpg)
Docker ComposeCorrer service sin dependencias:
Ejecutar un comando en un service:
Ejecutar un archivo compose especifico:
$ docker-compose up --no-deps <service>
$ docker-compose run <service> <comando>
$ docker-compose -f docker-compose.prod.yml up
![Page 10: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/10.jpg)
docker-compose.ymlversion: '2'services:web: image: odoo:8 depends_on: - db ports: - 8069:8069db: image: postgres:latest environment: POSTGRES_USER: odoo POSTGRES_PASSWORD: odoo
![Page 11: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/11.jpg)
docker-compose.override.ymlweb: volumes: - ./odoo_vps:/mnt/extra-addons/odoo_vps ports: - "8069:8069"
![Page 12: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/12.jpg)
docker-compose.task.ymlweb_task: extends: file: docker-compose.override.yml service: web command: echo Task
![Page 13: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/13.jpg)
RecomendacionesAntes de dockerizar un app primero mapear sus servicios.
Cada container debe ser responsable de un solo proceso.
Usar solo volumen en caso sea necesario.
Separar sus configs docker-compose.yml
Aprovechar la reutilizacion de capas al crear imagenes.
![Page 14: Docker Ecosystem - Part II - Compose](https://reader036.vdocuments.net/reader036/viewer/2022081503/588431ce1a28ab39538b588d/html5/thumbnails/14.jpg)
Preguntas?