SlideShare a Scribd company logo
DOCKER
IN DEVELOPMENT
by
Quan Nguyen
Solutions Manager
FPT Technology Solutions
quanndm2@fpt.com.vn
WHO AM I?
Tech-a-holic, Coffee-a-holic,
Cocacola-a-holic
Graduated from FPT University
2008~2012: FPT Software
 Developer
 Technical lead
2012~now: FPT Technology Solutions
 Full-stack developer
 Products Manager
 Solutions Manager
 FPT-a-holic as well
WHAT WE WILL DISCUS TODAY?
Overview of Micro-service architect
(currently apply at FTS)
Why Docker in Micro-service architect?
Docker in (web apps) development.
Story
50%
Concept
20%
Application
20%
Usage
10%
TODAY'S CONTENTS
LET THE STORY BEGINS Once upon a time
TRAFFIC INSIGHT
Live Traffic Portal
NOTIS
Live Traffic on Mobile
http://notis.vn
THE CHALLENGES COME Life is not like a dream
CHALLENGE #01
Many languages (NodeJS, Python, C++, C#, Ruby, Scala, GoLang, …)
Many platforms/libraries (OpenCV2, OpenCV3, .NET, …)
Many environments (Ubuntu, Debian, Windows, …)
Many databases (MongoDB, PostgesSQL, Redis, MySQL, SQL Server, …)
Many other things (Active MQ, Rapid MQ, Mosquito, Hadoop, Spark, …)
Get right tool for the right job
SOLUTION #01
MONOLITHIC VS MICRO-SERVICES
WHEN ARCHITECTS DESIGN
WHEN DEVELOPERS DEVELOP
WHEN TESTERS TEST
CHALLENGE #02
CHALLENGE #02 – THE MATRIX FROM HELL
SOLUTION #02
SOLUTION #02
CHALLENGE #03
We have many micro-services for images/videos
processing.
Those services used GPU core (CUDA) to improve
speed.
The challenge is How to put those services on 01
GPU Server independently.
CHALLENGE #04 – WELCOME ON BOARD
Legacy
I told him:
 Get a new PC with Windows
 Install NodeJS
 Install MongoDB
 Install Redis
 Install VMWare with Debian VM
 Install PostgresSQL
 Install MySQL
 …
Nextday:
 Get code from GIT
 Configure for each thing
 Run each thing
With Docker
I told:
Get a new PC with Windows
Install Docker-Toolbox
Get code from GIT
Docker-compose up
And coffee time 
CHALLENGE #05 – TESTING
CHALLENGE #06 – DEPLOYMENT
DEMO TIME
THE SAMPLE MULTI SERVICES WEB APP
DockerCoinsMiner is the application for mining DockerCoins.
We have 4 services:
 Random Number (RNG): web service generating random bytes. (Ruby +
Sinatra)
 Hasher: web service computing hash (Python + Flask)
 Worker: background process using RNG and Hasher (Python)
 WebUI: web interface to watch progress (NodeJS + ExpressJS + Redis)
THE SAMPLE MULTI SERVICES WEB APP
DockerCoinsMiner is the application for mining DockerCoins.
How it works:
 Worker asks to RNG to give it random bytes
 Worker feeds those random bytes into hasher
 Each hash starting with 0 is a DockerCoin
 DockerCoins are stored in Redis
 Redis is also updated every second to track speed
 You can see the progress with the WebUI
DEMO
CHALLENGE #07 – SCALING
It’s a loooooong story:
Twelve-factor
Configure database
Service discovery
Ambassadors pattern
…
RECAP
OUR HERO
Q&A
TAKE AWAY
Ambassadors pattern
Docker-compose
Docker-machine
Service discovery
Docker
THANKS FOR LISTENING
by
Quan Nguyen
Solutions Manager
FPT Technology Solutions
quanndm2@fpt.com.vn

More Related Content

What's hot (20)

PDF
Docker - From Walking To Running
Giacomo Vacca
 
PDF
Docker and DevOps --- new IT culture
Terry Chen
 
PDF
Docker 101 @KACST Saudi HPC 2016
Walid Shaari
 
PDF
Docker, Docker Swarm mangement tool - Gorae
Rhio kim
 
PDF
Docker Continuous Delivery Workshop
Jirayut Nimsaeng
 
PDF
Docker by Example - Basics
Ganesh Samarthyam
 
PDF
Rapid Development With Docker Compose
Justin Crown
 
PPTX
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Van Phuc
 
PDF
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
dotCloud
 
PDF
[DockerCon 2019] Hardening Docker daemon with Rootless mode
Akihiro Suda
 
ODP
Docker - The Linux Container
Balaji Rajan
 
PDF
Basic docker for developer
Weerayut Hongsa
 
PDF
Real-World Docker: 10 Things We've Learned
RightScale
 
PPTX
From Docker to Production - SunshinePHP 2017
Chris Tankersley
 
PDF
Introduction To Docker
Hamilton Turner
 
PDF
Docker From Scratch
Giacomo Vacca
 
PDF
Shipping Applications to Production in Containers with Docker
Jérôme Petazzoni
 
PDF
Docker, the Future of DevOps
andersjanmyr
 
PPTX
Docker for Developers - Sunshine PHP
Chris Tankersley
 
PDF
Continuous Integration and Kamailio
Giacomo Vacca
 
Docker - From Walking To Running
Giacomo Vacca
 
Docker and DevOps --- new IT culture
Terry Chen
 
Docker 101 @KACST Saudi HPC 2016
Walid Shaari
 
Docker, Docker Swarm mangement tool - Gorae
Rhio kim
 
Docker Continuous Delivery Workshop
Jirayut Nimsaeng
 
Docker by Example - Basics
Ganesh Samarthyam
 
Rapid Development With Docker Compose
Justin Crown
 
Docker-Hanoi @DKT , Presentation about Docker Ecosystem
Van Phuc
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
dotCloud
 
[DockerCon 2019] Hardening Docker daemon with Rootless mode
Akihiro Suda
 
Docker - The Linux Container
Balaji Rajan
 
Basic docker for developer
Weerayut Hongsa
 
Real-World Docker: 10 Things We've Learned
RightScale
 
From Docker to Production - SunshinePHP 2017
Chris Tankersley
 
Introduction To Docker
Hamilton Turner
 
Docker From Scratch
Giacomo Vacca
 
Shipping Applications to Production in Containers with Docker
Jérôme Petazzoni
 
Docker, the Future of DevOps
andersjanmyr
 
Docker for Developers - Sunshine PHP
Chris Tankersley
 
Continuous Integration and Kamailio
Giacomo Vacca
 

Similar to Docker in development (Story) (20)

PPTX
Webinar by ZNetLive & Plesk- Winning the Game for WebOps and DevOps
ZNetLive
 
PDF
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
Yusuf Hadiwinata Sutandar
 
PPTX
Docker Bday #5, SF Edition: Introduction to Docker
Docker, Inc.
 
PPTX
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Jonas Rosland
 
PDF
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
PPTX
Docker Training - June 2015
{code}
 
PDF
Docker and Containers overview - Docker Workshop
Jonas Rosland
 
PDF
Docker Birthday #5 Meetup Cluj - Presentation
Alex Vranceanu
 
PDF
DockerCon EU 2015: Day 1 General Session
Docker, Inc.
 
PDF
Introduction to Docker and Linux Containers @ Cloud Computing Rhein Main
Puja Abbassi
 
PDF
Meetup Devops-Geneva-19.10.2019
Hidora
 
PPT
Node js
Chirag Parmar
 
PDF
Docker All The Things - ASP.NET 4.x and Windows Server Containers
Anthony Chu
 
PDF
Demystifying Docker
Cloud Native Bangalore
 
PPTX
Demystifying Docker101
Ajeet Singh Raina
 
PPTX
20170321 docker with Visual Studio 2017
Takayoshi Tanaka
 
PDF
Disruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Dr Ganesh Iyer
 
PDF
.NET Cloud-Native Bootcamp
VMware Tanzu
 
PPTX
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
Heiko Voigt
 
PDF
Tampere Docker meetup - Happy 5th Birthday Docker
Sakari Hoisko
 
Webinar by ZNetLive & Plesk- Winning the Game for WebOps and DevOps
ZNetLive
 
PHPIDOL#80: Kubernetes 101 for PHP Developer. Yusuf Hadiwinata - VP Operation...
Yusuf Hadiwinata Sutandar
 
Docker Bday #5, SF Edition: Introduction to Docker
Docker, Inc.
 
Docker and containers - For Boston Docker Meetup Workshop in March 2015
Jonas Rosland
 
A Shift from Monolith to Microservice using Docker
Ajeet Singh Raina
 
Docker Training - June 2015
{code}
 
Docker and Containers overview - Docker Workshop
Jonas Rosland
 
Docker Birthday #5 Meetup Cluj - Presentation
Alex Vranceanu
 
DockerCon EU 2015: Day 1 General Session
Docker, Inc.
 
Introduction to Docker and Linux Containers @ Cloud Computing Rhein Main
Puja Abbassi
 
Meetup Devops-Geneva-19.10.2019
Hidora
 
Node js
Chirag Parmar
 
Docker All The Things - ASP.NET 4.x and Windows Server Containers
Anthony Chu
 
Demystifying Docker
Cloud Native Bangalore
 
Demystifying Docker101
Ajeet Singh Raina
 
20170321 docker with Visual Studio 2017
Takayoshi Tanaka
 
Disruptive Technology Trends - Cloud, Mobile, IoT and Beyond
Dr Ganesh Iyer
 
.NET Cloud-Native Bootcamp
VMware Tanzu
 
INF104 - HCL Domino AppDev Pack – The Future of Domino App Dev Nobody Knows A...
Heiko Voigt
 
Tampere Docker meetup - Happy 5th Birthday Docker
Sakari Hoisko
 
Ad

Recently uploaded (20)

PDF
Python basic programing language for automation
DanialHabibi2
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Python basic programing language for automation
DanialHabibi2
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Ad

Docker in development (Story)

  • 2. WHO AM I? Tech-a-holic, Coffee-a-holic, Cocacola-a-holic Graduated from FPT University 2008~2012: FPT Software  Developer  Technical lead 2012~now: FPT Technology Solutions  Full-stack developer  Products Manager  Solutions Manager  FPT-a-holic as well
  • 3. WHAT WE WILL DISCUS TODAY? Overview of Micro-service architect (currently apply at FTS) Why Docker in Micro-service architect? Docker in (web apps) development. Story 50% Concept 20% Application 20% Usage 10% TODAY'S CONTENTS
  • 4. LET THE STORY BEGINS Once upon a time
  • 5. TRAFFIC INSIGHT Live Traffic Portal NOTIS Live Traffic on Mobile http://notis.vn
  • 6. THE CHALLENGES COME Life is not like a dream
  • 7. CHALLENGE #01 Many languages (NodeJS, Python, C++, C#, Ruby, Scala, GoLang, …) Many platforms/libraries (OpenCV2, OpenCV3, .NET, …) Many environments (Ubuntu, Debian, Windows, …) Many databases (MongoDB, PostgesSQL, Redis, MySQL, SQL Server, …) Many other things (Active MQ, Rapid MQ, Mosquito, Hadoop, Spark, …) Get right tool for the right job
  • 14. CHALLENGE #02 – THE MATRIX FROM HELL
  • 17. CHALLENGE #03 We have many micro-services for images/videos processing. Those services used GPU core (CUDA) to improve speed. The challenge is How to put those services on 01 GPU Server independently.
  • 18. CHALLENGE #04 – WELCOME ON BOARD Legacy I told him:  Get a new PC with Windows  Install NodeJS  Install MongoDB  Install Redis  Install VMWare with Debian VM  Install PostgresSQL  Install MySQL  … Nextday:  Get code from GIT  Configure for each thing  Run each thing With Docker I told: Get a new PC with Windows Install Docker-Toolbox Get code from GIT Docker-compose up And coffee time 
  • 19. CHALLENGE #05 – TESTING
  • 20. CHALLENGE #06 – DEPLOYMENT
  • 22. THE SAMPLE MULTI SERVICES WEB APP DockerCoinsMiner is the application for mining DockerCoins. We have 4 services:  Random Number (RNG): web service generating random bytes. (Ruby + Sinatra)  Hasher: web service computing hash (Python + Flask)  Worker: background process using RNG and Hasher (Python)  WebUI: web interface to watch progress (NodeJS + ExpressJS + Redis)
  • 23. THE SAMPLE MULTI SERVICES WEB APP DockerCoinsMiner is the application for mining DockerCoins. How it works:  Worker asks to RNG to give it random bytes  Worker feeds those random bytes into hasher  Each hash starting with 0 is a DockerCoin  DockerCoins are stored in Redis  Redis is also updated every second to track speed  You can see the progress with the WebUI
  • 24. DEMO
  • 25. CHALLENGE #07 – SCALING It’s a loooooong story: Twelve-factor Configure database Service discovery Ambassadors pattern …
  • 26. RECAP
  • 28. Q&A
  • 30. THANKS FOR LISTENING by Quan Nguyen Solutions Manager FPT Technology Solutions [email protected]