My presentation in JavaDay conf Kharkiv (Ukraine). It has been targeted mainly to Java developers to demonstrate how modern containerisation tools can improve developers agility and productivity.
This presentations contains link to he Workshop that has been delivered in OpenSlava 2015
7. Workflow
Dockerfile
FROM java:jdk
COPY chnorr.jar /app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/app.jar"]
dev
Java code &
Dockerfile
Compile &
Unit test
chnorr.jar build registry
(private or
public)
push ops
pull
Container engine
docker run
8. Things to remember
Containers have ephemeral. Persistent
volumes should be managed separately
App logs > /dev/stdout. Logs will be
streamed to log collector service
Use environment variables to inject
configuration parameters inside container
Do not use ENV vars for secrets
Use private registry to distribute
containers
Containers != VM (!!!)
11. Docker needs Platform
Guest OS
VM
Guest OS
Container
engine
Container
engine
Hypervisor
VM
Docker is just a container engine many
things are not there
• Networking
• Storage
• Service discovery
• Container scheduling
• Placement and load balancing
• Routing
• Self healing
...
19. Things to remember
Workflows can be part of app-baseline
Share workspace between slaves
Don’t forget private docker registry
DIND is evil but unavoidable