Docker can be used as an everyday work tool for developers and system administrators. It provides tools to work with containers, which enable operating-system-level virtualization. Docker images contain executable packages that include code, runtimes, and configuration files to run software. Containers run as isolated processes on the host machine, using resources from the host operating system. Common Docker commands include docker run to launch containers, docker build to build images, and docker ps to view running containers. Docker Compose allows defining and running multi-container applications using a YAML configuration file.
Summary of changes introduced on DockerCon's in 2017.
Highlights of new tools, updates & key announcements including their potential impact on our daily projects.
DCSF19 Tips and Tricks of the Docker Captains Docker, Inc.
Brandon Mitchell, BoxBoat
Docker Captain Brandon Mitchell will help you accelerate your adoption of Docker containers by delivering tips and tricks on getting the most out of Docker. Topics include managing disk usage, preventing subnet collisions, debugging container networking, understanding image layers, getting more value out of the default volume driver, and solving the UID/GID permission issues with volumes in a way that allows images to be portable from any developer laptop and to production.
Streamline your development environment with dockerGiacomo Bagnoli
These days applications are getting more and more complex. It's becoming quite
difficult to keep track of all the different components an application needs in order to
function (a database, a message queueing system, a web server, a document
store, a search engine, you name it.). How many times we heard 'it worked on my
machine'?. In this talk we are going to explore Docker, what it is, how it works
and how much it can benefit in keeping the development environment consistent.
We are going to talk about Dockerfiles, best practices, tools like fig and vagrant,
and finally show an example of how it applies to a ruby on rails
application.
Summary of changes introduced on DockerCon's in 2017.
Highlights of new tools, updates & key announcements including their potential impact on our daily projects.
DCSF19 Tips and Tricks of the Docker Captains Docker, Inc.
Brandon Mitchell, BoxBoat
Docker Captain Brandon Mitchell will help you accelerate your adoption of Docker containers by delivering tips and tricks on getting the most out of Docker. Topics include managing disk usage, preventing subnet collisions, debugging container networking, understanding image layers, getting more value out of the default volume driver, and solving the UID/GID permission issues with volumes in a way that allows images to be portable from any developer laptop and to production.
Streamline your development environment with dockerGiacomo Bagnoli
These days applications are getting more and more complex. It's becoming quite
difficult to keep track of all the different components an application needs in order to
function (a database, a message queueing system, a web server, a document
store, a search engine, you name it.). How many times we heard 'it worked on my
machine'?. In this talk we are going to explore Docker, what it is, how it works
and how much it can benefit in keeping the development environment consistent.
We are going to talk about Dockerfiles, best practices, tools like fig and vagrant,
and finally show an example of how it applies to a ruby on rails
application.
Dockerizing Symfony2 application. Why Docker is so cool And what is Docker? And what are Containers? How they works? What are the ecosystem of Docker? And how to dockerize your web application (can be based on Symfony2 framework)?
Dockerize your Symfony application - Symfony Live NYC 2014André Rømcke
With the advent of docker it is now easier then ever to make sure you develop, test and deploy using the same environment, resulting in no more issues caused by differences or missing libraries. Talk will go into the basics of containers, docker, and showcase how you might setup a basic php + mysql environment for your symfony app.
https://joind.in/12188
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...Docker, Inc.
At Docker, we are striving to enable the extensibility of Docker via "Plugins" and make them available for developers and enterprises alike. Come attend this talk to understand what it takes to build, ship, store and run plugins. We will deep dive into plugin lifecycle management on a single engine and across a swarm cluster. We will also demonstrate how you can integrate plugins from other enterprises or developers into your ecosystem. There will be fun demos accompanying this talk! This will be session will be beneficial to you if you: 1) Are an ops team member trying to integrate Docker with your favorite storage or network vendor 2) Are Interested in extending or customizing Docker; or 3) Want to become a Docker partner, and want to make the technology integration seamless.
Docker All The Things - ASP.NET 4.x and Windows Server ContainersAnthony Chu
Docker is awesome and there's been a lot of excitement over .NET Core running in Linux containers. But why do older apps have to miss out on the fun? With Windows Server 2016 and Windows Server containers, there's finally a way to dockerize .NET 4.6 apps using the same Docker tools and commands as we're used to on Linux. In this intermediate level talk, I'll give an overview of Docker and Windows Server containers. Then I'll demonstrate different ways to run existing ASP.NET Web API, MVC, and even WebForms applications inside Docker containers.
Getting instantly up and running with Docker and SymfonyAndré Rømcke
A look into how you can start to use Docker today with ready made setup with php7, nginx, redis, blackfire and so on. How you may extend it, and integrating it into your continuous integration workflow, and how you can setup a continuous deployment workflow using for instance Travis-CI.
Quicklink: https://legacy.joind.in/19070
How to debug the pod which is hard to debug (디버그 하기 어려운 POD 디버그 하기)어형 이
When using Kubernetes, users face a variety of problems. The most diverse of these problems occurs in pods. So users need to know how to debug pods.
Of course, the start of debugging a pod is taking a look at it's status and logs and events. But, in most case, this is not enough. So the users want to get the shell from a pod and test it by reproducing the same situation as the problem. But there are pods that are impossible to get the shell such as scratch image.
So this session will introduce various techniques for debugging pods with minimal or no modification workloads.
In particular, the following cases will be explained.
* debugging docker, containerd pod
* debugging pod using host informations, tools
* debugging pod in crashloopback status
* debugging pod based scratch image
* debugging readonly disk pods
Docker 101: an introduction to Docker. The presentation introduces the Docker fundamentals, including LXC Containers and other tools of the Docker ecosystem.
Be a better developer with Docker (revision 3)Nicola Paolucci
Be a better developer with Docker: tricks of the trade (revision 3)
The talk will teach developers how to approach their development environment setups using Docker, covering awesome tricks to make the experience smooth, fast, powerful and repeatable. The talk is logically divided in five parts:
- What is Docker
- Why Docker makes developers happier
- Workflows and techniques
- Tips and tricks
- Future developments
Invited to introduce Docker to the Dept. for Information and Communication Services (Informations- und Kommunikationsdienste - IuK) at the University of Rostock.
Dockerizing Symfony2 application. Why Docker is so cool And what is Docker? And what are Containers? How they works? What are the ecosystem of Docker? And how to dockerize your web application (can be based on Symfony2 framework)?
Dockerize your Symfony application - Symfony Live NYC 2014André Rømcke
With the advent of docker it is now easier then ever to make sure you develop, test and deploy using the same environment, resulting in no more issues caused by differences or missing libraries. Talk will go into the basics of containers, docker, and showcase how you might setup a basic php + mysql environment for your symfony app.
https://joind.in/12188
Plug-ins: Building, Shipping, Storing, and Running - Nandhini Santhanam and T...Docker, Inc.
At Docker, we are striving to enable the extensibility of Docker via "Plugins" and make them available for developers and enterprises alike. Come attend this talk to understand what it takes to build, ship, store and run plugins. We will deep dive into plugin lifecycle management on a single engine and across a swarm cluster. We will also demonstrate how you can integrate plugins from other enterprises or developers into your ecosystem. There will be fun demos accompanying this talk! This will be session will be beneficial to you if you: 1) Are an ops team member trying to integrate Docker with your favorite storage or network vendor 2) Are Interested in extending or customizing Docker; or 3) Want to become a Docker partner, and want to make the technology integration seamless.
Docker All The Things - ASP.NET 4.x and Windows Server ContainersAnthony Chu
Docker is awesome and there's been a lot of excitement over .NET Core running in Linux containers. But why do older apps have to miss out on the fun? With Windows Server 2016 and Windows Server containers, there's finally a way to dockerize .NET 4.6 apps using the same Docker tools and commands as we're used to on Linux. In this intermediate level talk, I'll give an overview of Docker and Windows Server containers. Then I'll demonstrate different ways to run existing ASP.NET Web API, MVC, and even WebForms applications inside Docker containers.
Getting instantly up and running with Docker and SymfonyAndré Rømcke
A look into how you can start to use Docker today with ready made setup with php7, nginx, redis, blackfire and so on. How you may extend it, and integrating it into your continuous integration workflow, and how you can setup a continuous deployment workflow using for instance Travis-CI.
Quicklink: https://legacy.joind.in/19070
How to debug the pod which is hard to debug (디버그 하기 어려운 POD 디버그 하기)어형 이
When using Kubernetes, users face a variety of problems. The most diverse of these problems occurs in pods. So users need to know how to debug pods.
Of course, the start of debugging a pod is taking a look at it's status and logs and events. But, in most case, this is not enough. So the users want to get the shell from a pod and test it by reproducing the same situation as the problem. But there are pods that are impossible to get the shell such as scratch image.
So this session will introduce various techniques for debugging pods with minimal or no modification workloads.
In particular, the following cases will be explained.
* debugging docker, containerd pod
* debugging pod using host informations, tools
* debugging pod in crashloopback status
* debugging pod based scratch image
* debugging readonly disk pods
Docker 101: an introduction to Docker. The presentation introduces the Docker fundamentals, including LXC Containers and other tools of the Docker ecosystem.
Be a better developer with Docker (revision 3)Nicola Paolucci
Be a better developer with Docker: tricks of the trade (revision 3)
The talk will teach developers how to approach their development environment setups using Docker, covering awesome tricks to make the experience smooth, fast, powerful and repeatable. The talk is logically divided in five parts:
- What is Docker
- Why Docker makes developers happier
- Workflows and techniques
- Tips and tricks
- Future developments
Invited to introduce Docker to the Dept. for Information and Communication Services (Informations- und Kommunikationsdienste - IuK) at the University of Rostock.
Scaling Development Environments with DockerDocker, Inc.
We set out to solve the problems of quickly building high quality games for a fragmented mobile market. Taking advantage of HTML5 allowed a fast, familiar and highly iterative local development process, and a hybrid build process for native apps meant high performance games on mobile. Our product is designed to comprehensively handle complex UI flows, related server tasks as well as deep integrations with any social platform. This is necessarily complex piece of engineering, with dozens of large dependencies, and 5 local web servers powering a single user’s experience. When we set out to make this easily available to 3rd parties, we used Docker to solve to major challenges: 1) Fitting many users, each with a unique development environment, on to one machine; 2) Managing all of these development environments in a scalable way.
IBM Index 2018 Conference Workshop: Modernizing Traditional Java App's with D...Eric Smalling
Slides from my 2.5 hour hands-on workshop covering Docker basics, the Docker MTA program and how it applies to legacy Java applications and some tips on running those apps in containers in production.
Explains how Docker and Nix work as deployment solutions, in what ways they are similar and different, and how they can be combined to achieve interesting results.
Présentation du système Docker animée par Sebastien Binet (CNRS/IN2P3/LPC) en Décembre 2015 au Proto204
http://reseau-loops.github.io/journee_2015_12.html
DCEU 18: Tips and Tricks of the Docker CaptainsDocker, Inc.
Brandon Mitchell - Solutions Architect, BoxBoat
Docker Captain Brandon Mitchell will help you accelerate your adoption of Docker containers by delivering tips and tricks on getting the most out of Docker. Topics include managing disk usage, preventing subnet collisions, debugging container networking, understanding image layers, getting more value out of the default volume driver, and solving the UID/GID permission issues with volumes in a way that allows images to be portable from any developer laptop and to production.
Использование Docker в CI / Александр Акбашев (HERE Technologies)Ontico
РИТ++ 2017, Root Conf
Зал Пекин + Шанхай, 6 июня, 17:00
Тезисы:
http://rootconf.ru/2017/abstracts/2504.html
В своём докладе я расскажу о том, почему мы решили использовать Docker в рамках Continuous Integration: ускорить тесты, повысить стабильность, улучшить контроль над окружением и используемыми библиотеками.
Доклад так же содержит подробности о многих сложностях, с которыми пришлось столкнуться в ходе миграции на Docker: борьба с растущим числом и размером образов, бесконтрольные обновления образов, нестабильное поведение, и другие.
В конце доклада я покажу, как именно мы следим за стабильностью Docker в нашей инфраструктуре. И насколько Docker стабилен на больших объемах (больше 100k билдов в сутки).
You've heard of Fat/Uber JARs and are probably building them today. They provide much greater app portability and minimize the risk of missing dependencies. However, in a containerized world, where small code changes and re-deployments can occur frequently for high scale environments, the overhead of processing and transferring virtually duplicate content can quickly grow. In this session, we'll explore the benefits and costs of Fat JAR packaging and demonstrate various options for slimming your apps and saving those trees using popular frameworks like Wildfly Swarm, Dropwizard, Spring Boot and Eclipse Vert.x.
AtlasCamp 2015 Docker continuous integration trainingSteve Smith
A 2-hour training session delivered at AtlasCamp in Prague, June 9th 2015.
* Docker vs virtual machines
* Docker concepts
* Docker for testing
* Automation with Docker Compose
* Continuous integration with Bamboo Docker support
* Extracting test results from Docker containers
* Continuous deployment with deployment environments
It is a simple introduction to the containers world, starting from LXC to arrive to the Docker Platform.
The presentation is focused on the first steps in the docker environment and the scenarious from a developer point of view.
Why everyone is excited about Docker (and you should too...) - Carlo Bonamic...Codemotion
In less than two years Docker went from first line of code to major Open Source project with contributions from all the big names in IT. Everyone is excited, but what's in for me - as a Dev or Ops? In short, Docker makes creating Development, Test and even Production environments an order of magnitude simpler, faster and completely portable across both local and cloud infrastructure. We will start from Docker main concepts: how to create a Linux Container from base images, run your application in it, and version your runtimes as you would with source code, and finish with a concrete example.
Il s’agit dans un premier temps de présenter Docker, ses cas d’usage et quelques bonnes pratiques d’utilisation.
Le but est de présenter Docker, son mode de fonctionnement et son écosystème.
Ce qu’il peut apporter et les pièges à éviter
https://github.com/kanedafromparis/prez-fabric8-dmp
Have you ever wondered how search works while visiting an e-commerce site, internal website, or searching through other types of online resources? Look no further than this informative session on the ways that taxonomies help end-users navigate the internet! Hear from taxonomists and other information professionals who have first-hand experience creating and working with taxonomies that aid in navigation, search, and discovery across a range of disciplines.
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Orkestra
UIIN Conference, Madrid, 27-29 May 2024
James Wilson, Orkestra and Deusto Business School
Emily Wise, Lund University
Madeline Smith, The Glasgow School of Art
Acorn Recovery: Restore IT infra within minutesIP ServerOne
Introducing Acorn Recovery as a Service, a simple, fast, and secure managed disaster recovery (DRaaS) by IP ServerOne. A DR solution that helps restore your IT infra within minutes.
This presentation, created by Syed Faiz ul Hassan, explores the profound influence of media on public perception and behavior. It delves into the evolution of media from oral traditions to modern digital and social media platforms. Key topics include the role of media in information propagation, socialization, crisis awareness, globalization, and education. The presentation also examines media influence through agenda setting, propaganda, and manipulative techniques used by advertisers and marketers. Furthermore, it highlights the impact of surveillance enabled by media technologies on personal behavior and preferences. Through this comprehensive overview, the presentation aims to shed light on how media shapes collective consciousness and public opinion.
This presentation by Morris Kleiner (University of Minnesota), was made during the discussion “Competition and Regulation in Professions and Occupations” held at the Working Party No. 2 on Competition and Regulation on 10 June 2024. More papers and presentations on the topic can be found out at oe.cd/crps.
This presentation was uploaded with the author’s consent.
0x01 - Newton's Third Law: Static vs. Dynamic AbusersOWASP Beja
f you offer a service on the web, odds are that someone will abuse it. Be it an API, a SaaS, a PaaS, or even a static website, someone somewhere will try to figure out a way to use it to their own needs. In this talk we'll compare measures that are effective against static attackers and how to battle a dynamic attacker who adapts to your counter-measures.
About the Speaker
===============
Diogo Sousa, Engineering Manager @ Canonical
An opinionated individual with an interest in cryptography and its intersection with secure software development.
International Workshop on Artificial Intelligence in Software Testing
Docker as an every day work tool
1. Docker as an every day work tool
2017 Created by Przemysław Koltermann
1
2. About me
few years working as computer networks admin
earning money as php developer for 5 years...
... half of it @GOG.com
working with docker for 2 years
...
loves heights ;)
2
4. What is docker?
set of tools to work with containers
technology for operation-system-level virtualization
company driving the container movement
(Docker Inc.)
3 . 2
6. What is image?
lightweight, stand-alone, executable package
contains everything needed to run a piece of
so ware including the code, a runtime, libraries,
environment variables, and config files
build of layers
build based on Dockerfile
4 . 1
19. D4M slow file shared file sync
Tools that were build to speed up files sync:
docker-sync.io
www.craneup.tech
In release 17.04 CE docker added :cached option.
https://docs.docker.com/docker-for-mac/osxfs-
caching/
9 . 5
20. My advices when working on OSX
use dinghy instead D4M
put stuff in named volumes and tmpfs
if U use D4M and don't need uber speed use :cached
volumes
9 . 6
24. Other important commands
Commands:
build Build an image from a Dockerfile
cp Copy files/folders between a container and the local filesystem
events Get real time events from the server
exec Run a command in a running container
history Show the history of an image
info Display system-wide information
inspect Return low-level information on Docker objects
kill Kill one or more running containers
login Log in to a Docker registry
logout Log out from a Docker registry
logs Fetch the logs of a container
port List port mappings or a specific mapping for the container
pull Pull an image or a repository from a registry
push Push an image or a repository to a registry
restart Restart one or more containers
rm Remove one or more containers
run Run a command in a new container
stats Display a live stream of container(s) resource usage statistics
top Display the running processes of a container
13 . 1
25. Run the container
# run container and open bash console
docker container run -it debian:jessie bash
# install npm packages for your app
docker run -v /home/developer/myappsource:/application
-w /application node:6.12-alpine npm install
# run your own registry
docker run -d -p 5000:5000 --restart=always --name
registry registry:2
# push an image to the registry
docker image tag example:0.1 localhost:5000/example:0.1
docker image push localhost:5000/example:0.1
13 . 2
26. Command you need to know
docker system prune
docker container prune | ls | inspect
image
network
volume
13 . 3
27. docker system prune
%$ docker system prune
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all dangling images
- all build cache
Are you sure you want to continue? [y/N] y
Deleted Containers:
7afe35733f15bbd3f0887e2853c65b95709a900d32addb6140fc4c
...
Deleted Networks:
docker_default
Deleted Images:
deleted: sha256:dbef69ad1f9e012e47299c659a0574c883df94
...
Total reclaimed space: 14.66GB
13 . 4
28. docker system df
%$ docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 41 9 6.552GB 4.863GB (74%)
Containers 11 11 320B 0B (0%)
Local Volumes 50 3 1.177GB 1.174GB (99%)
Build Cache 0B 0B
13 . 5
30. docker image history
%$ docker image history 9867318ddb33
IMAGE CREATED CREATED BY SIZE
9867318ddb33 8 months ago /bin/sh -c #(nop) CMD ["mailcatcher" "-f"... 0B
missing 8 months ago /bin/sh -c #(nop) EXPOSE 1080/tcp 0B
missing 8 months ago /bin/sh -c #(nop) EXPOSE 1025/tcp 0B
missing 8 months ago /bin/sh -c chmod +x install.sh && ./instal... 20.4MB
missing 8 months ago /bin/sh -c #(nop) ADD file:4b20298d8b8d96b... 390B
missing 8 months ago /bin/sh -c #(nop) MAINTAINER Johannes Sch... 0B
missing 8 months ago /bin/sh -c #(nop) CMD ["irb"] 0B
missing 8 months ago /bin/sh -c mkdir -p "$GEM_HOME" "$BUNDLE_B... 0B
missing 8 months ago /bin/sh -c #(nop) ENV PATH=/usr/local/bun... 0B
missing 8 months ago /bin/sh -c gem install bundler --version "... 1.52MB
missing 8 months ago /bin/sh -c #(nop) ENV BUNDLER_VERSION=1.14.6 0B
missing 8 months ago /bin/sh -c set -ex && buildDeps=' biso... 111MB
missing 8 months ago /bin/sh -c #(nop) ENV RUBYGEMS_VERSION=2.... 0B
missing 8 months ago /bin/sh -c #(nop) ENV RUBY_VERSION=2.2.6 0B
missing 8 months ago /bin/sh -c #(nop) ENV RUBY_MAJOR=2.2 0B
missing 8 months ago /bin/sh -c mkdir -p /usr/local/etc && { ... 45B
missing 9 months ago /bin/sh -c set -ex; apt-get update; apt-... 323MB
missing 9 months ago /bin/sh -c apt-get update && apt-get insta... 123MB
missing 9 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0B
missing 9 months ago /bin/sh -c #(nop) ADD file:41ac8d85ee35954... 123MB
13 . 7
31. docker top
docker top d4b777e08a5d
UID PID PPID C STIME TTY TIME CMD
root 9518 9501 0 lis25 pts/0 00:00:00 npm
root 9581 9518 0 lis25 pts/0 00:00:00 sh -c grunt serve
root 9583 9581 0 lis25 pts/0 00:04:52 grunt
13 . 8
32. docker cp
Fastest way to copy files into container
docker cp --help
Usage: docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
Copy files/folders between a container and the local filesystem
Options:
-a, --archive Archive mode (copy all uid/gid information)
-L, --follow-link Always follow symbol link in SRC_PATH
--help Print usage
13 . 9
33. docker-compose
Tool for defining and running multi-container Docker
applications
Config file schema evolving pretty fast, current latest
version is 3.4
# Start defined services in background
docker-compose up -d
# Stop and cleanup all services
docker-compose down -v
# Follow logs of all defined services
docker-compose logs -f
13 . 10
35. Homework
Add this to ~/.bash_profile
alias dps='docker ps --format
"table {{.ID}}t{{.Image}}t{{.Status}}t{{.Names}}t{{.Ports}}"'
https://docs.docker.com/engine/admin/formatting
14