12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
Traditional APP | Twelve-factor app | |
---|---|---|
Time between deploys | Weeks | Hours |
Code authors vs code deployers | Different people | Same people |
Dev vs production environments | Divergent | As similar as possible |
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
12 Factor Apps
12factor.net
Set of 12 rules how to write modern applications.
I. Codebase
II. Dependencies
III. Config
IV. Backing services
V. Build, release, run
VI. Processes
VII. Port binding
VIII. Concurrency
IX. Disposability
X. Dev/prod parity
XI. Logs
XII. Admin processe
Where to start
Installation
$ docker --version
Docker version 19.03.8, build afacb8b
$ docker run hello-world
Basic Usage
System Wide Info
Docker Images
Basic Usage
Containers
Docker Registry
Docker image name also contains location of it source
Remote Docker (over SSH)
export DOCKER_HOST=ssh://root@servername
docker version
docker info
Questions?