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

Dabbling in Docker

Dabbling in Docker

5e6ceef905d14ade228ea22c445d57bc?s=128

Aidan Feldman

January 25, 2016
Tweet

More Decks by Aidan Feldman

Other Decks in Technology

Transcript

  1. Dabbling in Docker Aidan Feldman January 25, 2016

  2. Dabbling in Docker Agenda 1 What Docker does 2 Why

    it’s useful 3 How to use it 4 Challenges
  3. Dabbling in Docker Agenda 1 What Docker does 2 Why

    it’s useful 3 How to use it 4 Challenges
  4. kinda like Vagrant/AMIs 4

  5. How it works code 5 docker build Dockerfile image docker

    run container
  6. Dabbling in Docker Agenda 1 What Docker does 2 Why

    it’s useful 3 How to use it 4 Challenges
  7. why it’s useful • specific dependency versions • sandboxing…without a

    full VM per app • dev-prod parity • “works on my machine” • complex architectures 7
  8. Dabbling in Docker Agenda 1 What Docker does 2 Why

    it’s useful 3 How to use it 4 Challenges
  9. How it works code 9 docker build Dockerfile image docker

    run container
  10. Dockerfiles FROM <base image> COPY <source> <destination> ENV <key> <value>

    WORKDIR <path> RUN <command> EXPOSE <port> CMD <start> 10
  11. Building 1. Open Docker Quickstart Terminal 1. `docker-machine ls` 2.

    `cd <dir>` 3. `docker build -t <imagename> .` 4. `docker images` 11
  12. Running • `docker run -p <external>:<internal> <imagename>` • `docker-machine ip

    default` • `docker ps` 12
  13. Examples • JSONP • Node onbuild • Node • C2

    (pull request) 13
  14. Multiple components • apps • databases • queues • microservices

    14
  15. JSONProxy example 15

  16. Dabbling in Docker Agenda 1 What Docker does 2 Why

    it’s useful 3 How to use it 4 Challenges
  17. Challenges • Development workflow • Compose not production-ready yet •

    Another Thing • Persistence • Secrets 17
  18. Thanks! Aidan Feldman