😰
🤮
🤬
😱
😎
Features
Time
Quality
Roy Osherove
Ron Jeffries, Chet Hendrickson, deliver:Agile 2018.
FROMSETUP
COPY
CMD
FROMFROM
FROM
FROM
scratch
FROM
SETUP
Security
Dependencies
Host OS
Docker
Runtime
Container
Web Server
App
FROM
SETUP
COPY
Security
Dependencies
Host OS
Docker
Runtime
Docker Image
Web Server
App Code
Host OS
Docker
Runtime
minimal-node-web-server
Express.js
Angular
/dist
/usr/src/app
FROM
SETUP
COPY
CMD
Security
Dependencies
FROM
SETUP
COPY
CMD
Security
Dependencies
bit.ly/npmScriptsForDocker
.circleci/config.yml
.circleci/config.yml
FROMjobs
build
deploy
.circleci/config.yml
FROMbuild
env
steps
Docker
checkout
run
store build artifacts
store test results
FROM
FROM
FROM
as builder
as tester
COPY
from builder
CMD
copy end result
FROM
FROM
FROM
as builder
as tester
COPY
from builder
CMD
minimal-node-build-env
alpine-node-chromium
minimal-nginx-web-server
50+ Mb
200+ Mb
7 Mb
Execution
docker build -f Dockerfile.integration . -t lemon-martLocal build
CI-x build
.circleci/config.yml
FROMjobs
build
deploy
.circleci/config.yml
FROMdeploy
restore
steps
Build artifact
Sign in to container repo
Publish to repo
Trigger deployment
bit.ly/npmScriptsForAWS
npm run aws:fargate-releaseheroku container:push web -a lemon-martnow --docker --publicfor discount codes visit