Links
Why?
● Most containers only need to communicate
with other containers
● Only expose the frontend to the public
Stack
Todo MVC
Flask python app
Requires rethinkdb
Publish port 5000

RethinkDB
Expose port 27015
Publish port 8080
Environment
Links will expose the child container’s exposed
ports, ip, and environment to the parent.
Environment vars are...
Starting Rethinkdb
docker run -d -p 8080 -name rethinkdb -e NAME=todo
crosbymichael/rethinkdb --bind all

Publish the admi...
Starting the frontend
docker run -d -p 5000 -link rethinkdb:db -name
todo frontend
#python code using a client lib
proto, ...
Code
github.com/crosbymichael/docker-links-backbone-todo
Upcoming SlideShare
Loading in …5
×

Docker links | Docker workshop #2 at Twitter

2,337 views

Published on

Presentation of Docker links at the Docker workshop #1 at Twitter, by Michael Crosby.
Code + example can be found here: https://github.com/crosbymichael/docker-links-backbone-todo

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,337
On SlideShare
0
From Embeds
0
Number of Embeds
758
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Docker links | Docker workshop #2 at Twitter

  1. 1. Links
  2. 2. Why? ● Most containers only need to communicate with other containers ● Only expose the frontend to the public
  3. 3. Stack Todo MVC Flask python app Requires rethinkdb Publish port 5000 RethinkDB Expose port 27015 Publish port 8080
  4. 4. Environment Links will expose the child container’s exposed ports, ip, and environment to the parent. Environment vars are prefixed with the alias of the child i.e. DB_PORT_27015_TCP=tcp://xxx.x...:27015
  5. 5. Starting Rethinkdb docker run -d -p 8080 -name rethinkdb -e NAME=todo crosbymichael/rethinkdb --bind all Publish the admin ui to the host, keep everything else internally. 0.0.0.0:49155->8080/tcp, 28015/tcp, 29015/tcp
  6. 6. Starting the frontend docker run -d -p 5000 -link rethinkdb:db -name todo frontend #python code using a client lib proto, ip, port = docker.require_port('db', 28015) database_name = docker.require_env('db', 'name')
  7. 7. Code github.com/crosbymichael/docker-links-backbone-todo

×