A word about consent…
Please do:
Take pictures, tweet, take notes.
Please don't:
Record or live stream without my explicit consent.
2 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Bargaining
We crammed this monolith into a
container and called it a microservice
22 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Bargaining
What if we create "microservices"
that all talk to the same data source?
24 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Anti-pattern
Local disk
58 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 59
Slide 59 text
Anti-pattern
Local disk
59 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 60
Slide 60 text
Anti-pattern
Local disk
60 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 61
Slide 61 text
Best Practice
Connect to network-
attached services using
connection info from
the environment
61 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 62
Slide 62 text
5: Strictly separate
build and run stages
62 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Best Practice
Build immutable
images then run those
images
64 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 65
Slide 65 text
Painfully Obvious Best Practices
1. Eat when hungry
2. Sleep when tired
3. Book Casey West for speaking gigs
65 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 66
Slide 66 text
Best Practice
Respect the lifecycle:
build, run, destroy
66 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 67
Slide 67 text
6: Execute the app as
one or more stateless
processes
67 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 68
Slide 68 text
Best Practice
Schedule LRPs by
distributing them
across a cluster of
physical hardware
68 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Best Practice
Reuse application
images with specific
entrypoints for tasks
86 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 87
Slide 87 text
More factors?
• API first
• Secrets management
• Health metrics
• Global distribution
87 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry
Slide 88
Slide 88 text
You are now cloud-native
88 ! @caseywest #containercon #linuxcon #containers #realworld #sorrynotsorry