Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Quest for the Holy Grail of Continuous Delivery

spiddy
October 04, 2014

The Quest for the Holy Grail of Continuous Delivery

Continuous Delivery of Node.JS Apps With Docker from Scratch to Production.

Presented at:
- #wenode event http://wenode.barcelonajs.org/speaker/dimitris-kapanidis.html
- #scbcn14 event https://github.com/JavierCane/Software-Craftsmanship-Barcelona-2014

spiddy

October 04, 2014
Tweet

More Decks by spiddy

Other Decks in Technology

Transcript

  1. Discover, compose & deploy container stacks in your cloud Simple

    docker hosting, built for developers. .io wordpress: image: wordpress:4.1.0 ports: - “80” links: - mysql mysql: image: orchardup/mysql environment: - MYSQL_DATABASE=wordpress mysql wordpress Stackfile / fig.yml
  2. Docker is an open platform for developers and sysadmins to

    build, ship, and run distributed applications
  3. myapp Dockerfile FROM ubuntu:12.04 RUN apt­get ­y install ruby ADD

    . /app/ EXPOSE 3000 CMD rails server Base Image Install Dependencies Add Files to Container Expose Port Launch Command
  4. Scale your App myapp myapp myapp myapp myapp myapp myapp

    myapp myapp myapp myapp myapp myapp myapp
  5. Index • Process Workflow • Production Topology • Bootstrap a

    Mean.io Project • Dockerize • CI Build Test & Deploy • CI Backup & Monitor
  6. Job: Bootstrap Production db proxy fs docker run -d -p

    8080 -v /var/run/docker.sock:/tmp/docker.sock -t jwilder/nginx-proxy docker run –name wenode_data busybox true docker run -d -p 27017 –name db mongo:2.7.6
  7. Backup Process backup danhixon/backup­base 1 32 0 docker run --rm

    --link db:mongodb \ -e AWS_ACCESS_KEY_ID=xxx -e AWS_SECRET_ACCESS_KEY=xxx \ docker-backup-mongodb backup perform -t daily_mongodb
  8. Backup Process Diagram backup Dump db Encrypt Upload to S3

    Amazon S3 backup Restore db Decrypt Download from S3 db private public