[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3Ji-Woong Choi엔터프라이즈 고객사 IT 부서 담당자분들께 실습 교육을 위해 오픈소스컨설팅 한철희님께서 만든 자료입니다.
사전에 고객 테스트를 위해 실습환경을 완벽하게 만들어가는 센스!
기초부터 한 걸음이 얼마나 중요한 지 다들 아실거라 믿습니다.
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!pyrasis도커 무작정 따라하기
- 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커의 기본 개념부터 설치와 사용 방법까지 설명합니다.
더 자세한 내용은 가장 빨리 만나는 도커(Docker)를 참조해주세요~
http://www.pyrasis.com/private/2014/11/30/publish-docker-for-the-really-impatient-book
Introduction to dockerInstruqtDocker is a tool that allows users to package applications into containers to run on Linux servers. Containers provide isolation and resource sharing benefits compared to virtual machines. Docker simplifies deployment of containers by adding images, repositories and version control. Popular components include Dockerfiles to build images, Docker Hub for sharing images, and Docker Compose for defining multi-container apps. Docker has gained widespread adoption due to reducing complexity of managing containers across development and operations teams.
Introduction to container based virtualization with dockerBangladesh Network Operators GroupThis document provides an overview of Docker and the author's experience. It discusses key Docker concepts like images, containers, the Dockerfile and Docker Engine. It also summarizes Docker benefits like portability, scalability and efficiency. Components like Docker Hub, Docker Machine and orchestration tools are briefly introduced. Security considerations and using Docker in production are also mentioned.
Docker 101 : Introduction to Docker and ContainersYajushi SrivastavaThis document provides an introduction to Docker and containers. It discusses why containers are useful for software deployment given changes in the industry. Containers provide lightweight isolation of applications and their dependencies. Docker is a tool that manages containers running on the same operating system kernel. Key Docker components include the client, server, images, and containers. Popular use cases of Docker include Google running over a billion containers per week and Finnish Railways saving 50% of cloud costs with Docker.
Introduzione a Docker (Maggio 2017) [ITA]Valerio RadiceIntroduzione a Docker e alla Dockerizzazione.
Filosofia e progettazione Docker
Comandi principali per gesitere immagini, container, volumi e reti
Dockerfile e docker-compose
Valerio Radice @ Nextre (Maggio 2017)
TAG: docker , Dockerfile , docker-compose , italian , nextre
Docker Basic to AdvanceParas JainEvolving to serverless
How the applications are transforming
A note on CI/CD
Architecture of Docker
Setting up a docker environment
Deep dive into DockerFile and containers
Tagging and publishing an image to docker hub
A glimpse from session one
Services: scale our application and enable load-balancing
Swarm: Deploying application onto a cluster, running it on multiple machines
Stack: A stack is a group of interrelated services that share dependencies, and can be orchestrated and scaled together.
Deploy your app: Compose file works just as well in production as it does on your machine.
Extras: Containers and VMs together
Introduction to Docker ComposeAjeet Singh RainaThis document introduces Docker Compose, which allows defining and running multi-container Docker applications. It discusses that Docker Compose uses a YAML file to configure and run multi-service Docker apps. The 3 steps are to define services in a Dockerfile, define the app configuration in a Compose file, and run the containers with a single command. It also covers topics like networking, environment variables, and installing Docker Compose. Hands-on labs are provided to learn Compose through examples like WordPress.
Docker 101: An IntroductionPOSSCONThis document provides an introduction to Docker presented by Tibor Vass, a core maintainer on Docker Engine. It outlines challenges with traditional application deployment and argues that Docker addresses these by providing lightweight containers that package code and dependencies. The key Docker concepts of images, containers, builds and Compose are introduced. Images are read-only templates for containers which sandbox applications. Builds describe how to assemble images with Dockerfiles. Compose allows defining multi-container applications. The document concludes by describing how Docker improves the deployment workflow by allowing testing and deployment of the same images across environments.
Docker: From Zero to HerofazalrajaDocker introduction, how it helps in environment setup from development to production and within teams. Also some practical work.
Kubernetes 101 for BeginnersOktay EsgulThis presentation covers how app deployment model evolved from bare metal servers to Kubernetes World.
In addition to theoretical information, you will find free KATACODA workshops url to perform practices to understand the details of the each topics.
DockerA.K.M. AhsrafuzzamanDocker allows building, shipping, and running applications in portable containers. It packages an application with all its dependencies into a standardized unit for software development. Major cloud providers and companies support and use Docker in production. Containers are more lightweight and efficient than virtual machines, providing faster launch times and allowing thousands to run simultaneously on the same server. Docker simplifies distributing applications and ensures a consistent environment.
Docker introductionPhuc NguyenThe document introduces Docker, a container platform. It discusses how Docker addresses issues with deploying different PHP projects that have varying version requirements by allowing each project to run isolated in its own container with specified dependencies. It then covers key Docker concepts like images, containers, linking, exposing ports, volumes, and Dockerfiles. The document highlights advantages of Docker like enabling applications to run anywhere without compatibility issues and making deployment more efficient.
docker installation and basicsWalid AshrafThis document provides instructions on installing and using Docker on Linux (Ubuntu) and Windows. It discusses installing Docker on Ubuntu, basic Docker commands like images, ps, pull, run options for ports, volumes, and other commands. For Windows, it recommends using Docker Toolbox which includes Docker Machine, Engine, Compose and Kitematic GUI. It also covers installing the newer Docker for Windows which requires Windows 10 Pro/Enterprise with Hyper-V enabled.
Docker 101: Introduction to DockerDocker, Inc.This document provides an introduction to Docker. It discusses why Docker is useful for isolation, being lightweight, simplicity, workflow, and community. It describes the Docker engine, daemon, and CLI. It explains how Docker Hub provides image storage and automated builds. It outlines the Docker installation process and common workflows like finding images, pulling, running, stopping, and removing containers and images. It promotes Docker for building local images and using host volumes.
Introduction to dockerFrederik MogensenThis document provides an introduction to Docker. It begins by introducing the presenter and agenda. It then explains that containers are not virtual machines and discusses the differences in architecture and benefits. It covers the basic Docker workflow of building, shipping, and running containers. It discusses Docker concepts like images, containers, and registries. It demonstrates basic Docker commands. It shows how to define a Dockerfile and build an image. It discusses data persistence using volumes. It covers using Docker Compose to define and run multi-container applications and Docker Swarm for clustering. It provides recommendations for getting started with Docker at different levels.
Maven IntroductionSandeep ChawlaMaven is a build tool that can manage a project's build process, dependencies, documentation and reporting. It uses a Project Object Model (POM) file to store build configuration and metadata. Maven has advantages over Ant like built-in functionality for common tasks, cross-project reuse, and support for conditional logic. It works by defining the project with a POM file then running goals bound to default phases like compile, test, package to build the project.
Docker introOleg ZDocker allows users to package applications with all their dependencies into standardized units called containers that can run on any Linux server. Containers are more lightweight than virtual machines because they share the host operating system and only require the additional libraries and binaries needed to run the application rather than a full guest operating system. Docker uses containers and an image format to deploy applications in a consistent manner across development, testing, and production. The document provides examples of how to define a Dockerfile to build an image, run containers from images using docker-compose, and common Docker commands.
[NDC17] Kubernetes로 개발서버 간단히 찍어내기SeungYong Oh데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
Docker 로 Linux 없이 Linux 환경에서 개발하기iFunFactory Inc.2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXpressEngine요즘 규모에 상관 없이 서버를 운영하는 웹서비스 업체에서는 도커라는 주제가 화두입니다. 오히려 발빠른 개발자나 운영자들은 이미 도커를 이용하여 서비스를 운영하고 있지요. 본 세션은 도커의 기술적인 내용 보다는 사용자 입장에서 알아야 할 내용을 중심으로 구성됩니다.
Introduction to container based virtualization with dockerBangladesh Network Operators GroupThis document provides an overview of Docker and the author's experience. It discusses key Docker concepts like images, containers, the Dockerfile and Docker Engine. It also summarizes Docker benefits like portability, scalability and efficiency. Components like Docker Hub, Docker Machine and orchestration tools are briefly introduced. Security considerations and using Docker in production are also mentioned.
Docker 101 : Introduction to Docker and ContainersYajushi SrivastavaThis document provides an introduction to Docker and containers. It discusses why containers are useful for software deployment given changes in the industry. Containers provide lightweight isolation of applications and their dependencies. Docker is a tool that manages containers running on the same operating system kernel. Key Docker components include the client, server, images, and containers. Popular use cases of Docker include Google running over a billion containers per week and Finnish Railways saving 50% of cloud costs with Docker.
Introduzione a Docker (Maggio 2017) [ITA]Valerio RadiceIntroduzione a Docker e alla Dockerizzazione.
Filosofia e progettazione Docker
Comandi principali per gesitere immagini, container, volumi e reti
Dockerfile e docker-compose
Valerio Radice @ Nextre (Maggio 2017)
TAG: docker , Dockerfile , docker-compose , italian , nextre
Docker Basic to AdvanceParas JainEvolving to serverless
How the applications are transforming
A note on CI/CD
Architecture of Docker
Setting up a docker environment
Deep dive into DockerFile and containers
Tagging and publishing an image to docker hub
A glimpse from session one
Services: scale our application and enable load-balancing
Swarm: Deploying application onto a cluster, running it on multiple machines
Stack: A stack is a group of interrelated services that share dependencies, and can be orchestrated and scaled together.
Deploy your app: Compose file works just as well in production as it does on your machine.
Extras: Containers and VMs together
Introduction to Docker ComposeAjeet Singh RainaThis document introduces Docker Compose, which allows defining and running multi-container Docker applications. It discusses that Docker Compose uses a YAML file to configure and run multi-service Docker apps. The 3 steps are to define services in a Dockerfile, define the app configuration in a Compose file, and run the containers with a single command. It also covers topics like networking, environment variables, and installing Docker Compose. Hands-on labs are provided to learn Compose through examples like WordPress.
Docker 101: An IntroductionPOSSCONThis document provides an introduction to Docker presented by Tibor Vass, a core maintainer on Docker Engine. It outlines challenges with traditional application deployment and argues that Docker addresses these by providing lightweight containers that package code and dependencies. The key Docker concepts of images, containers, builds and Compose are introduced. Images are read-only templates for containers which sandbox applications. Builds describe how to assemble images with Dockerfiles. Compose allows defining multi-container applications. The document concludes by describing how Docker improves the deployment workflow by allowing testing and deployment of the same images across environments.
Docker: From Zero to HerofazalrajaDocker introduction, how it helps in environment setup from development to production and within teams. Also some practical work.
Kubernetes 101 for BeginnersOktay EsgulThis presentation covers how app deployment model evolved from bare metal servers to Kubernetes World.
In addition to theoretical information, you will find free KATACODA workshops url to perform practices to understand the details of the each topics.
DockerA.K.M. AhsrafuzzamanDocker allows building, shipping, and running applications in portable containers. It packages an application with all its dependencies into a standardized unit for software development. Major cloud providers and companies support and use Docker in production. Containers are more lightweight and efficient than virtual machines, providing faster launch times and allowing thousands to run simultaneously on the same server. Docker simplifies distributing applications and ensures a consistent environment.
Docker introductionPhuc NguyenThe document introduces Docker, a container platform. It discusses how Docker addresses issues with deploying different PHP projects that have varying version requirements by allowing each project to run isolated in its own container with specified dependencies. It then covers key Docker concepts like images, containers, linking, exposing ports, volumes, and Dockerfiles. The document highlights advantages of Docker like enabling applications to run anywhere without compatibility issues and making deployment more efficient.
docker installation and basicsWalid AshrafThis document provides instructions on installing and using Docker on Linux (Ubuntu) and Windows. It discusses installing Docker on Ubuntu, basic Docker commands like images, ps, pull, run options for ports, volumes, and other commands. For Windows, it recommends using Docker Toolbox which includes Docker Machine, Engine, Compose and Kitematic GUI. It also covers installing the newer Docker for Windows which requires Windows 10 Pro/Enterprise with Hyper-V enabled.
Docker 101: Introduction to DockerDocker, Inc.This document provides an introduction to Docker. It discusses why Docker is useful for isolation, being lightweight, simplicity, workflow, and community. It describes the Docker engine, daemon, and CLI. It explains how Docker Hub provides image storage and automated builds. It outlines the Docker installation process and common workflows like finding images, pulling, running, stopping, and removing containers and images. It promotes Docker for building local images and using host volumes.
Introduction to dockerFrederik MogensenThis document provides an introduction to Docker. It begins by introducing the presenter and agenda. It then explains that containers are not virtual machines and discusses the differences in architecture and benefits. It covers the basic Docker workflow of building, shipping, and running containers. It discusses Docker concepts like images, containers, and registries. It demonstrates basic Docker commands. It shows how to define a Dockerfile and build an image. It discusses data persistence using volumes. It covers using Docker Compose to define and run multi-container applications and Docker Swarm for clustering. It provides recommendations for getting started with Docker at different levels.
Maven IntroductionSandeep ChawlaMaven is a build tool that can manage a project's build process, dependencies, documentation and reporting. It uses a Project Object Model (POM) file to store build configuration and metadata. Maven has advantages over Ant like built-in functionality for common tasks, cross-project reuse, and support for conditional logic. It works by defining the project with a POM file then running goals bound to default phases like compile, test, package to build the project.
Docker introOleg ZDocker allows users to package applications with all their dependencies into standardized units called containers that can run on any Linux server. Containers are more lightweight than virtual machines because they share the host operating system and only require the additional libraries and binaries needed to run the application rather than a full guest operating system. Docker uses containers and an image format to deploy applications in a consistent manner across development, testing, and production. The document provides examples of how to define a Dockerfile to build an image, run containers from images using docker-compose, and common Docker commands.
[NDC17] Kubernetes로 개발서버 간단히 찍어내기SeungYong Oh데브시스터즈의 Cookie Run: OvenBreak 에 적용된 Kubernetes 기반 다중 개발 서버 환경 구축 시스템에 대한 발표입니다.
Container orchestration 기반 개발 환경 구축 시스템의 필요성과, 왜 Kubernetes를 선택했는지, Kubernetes의 개념과 유용한 기능들을 다룹니다. 아울러 구축한 시스템에 대한 데모와, 작업했던 항목들에 대해 리뷰합니다.
*NDC17 발표에서는 데모 동영상을 사용했으나, 슬라이드 캡쳐로 대신합니다.
Docker 로 Linux 없이 Linux 환경에서 개발하기iFunFactory Inc.2016 아이펀팩토리 Dev Day 발표 자료
강연 제목 : Docker 로 Linux 없이 Linux 환경에서 개발하기
발표자 : 김진욱 CTO
<2016>
- 일시 : 2016년 9월 28 수요일 12:00~14:20
- 장소 : 넥슨 판교 사옥 지하 1층 교육실
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXpressEngine요즘 규모에 상관 없이 서버를 운영하는 웹서비스 업체에서는 도커라는 주제가 화두입니다. 오히려 발빠른 개발자나 운영자들은 이미 도커를 이용하여 서비스를 운영하고 있지요. 본 세션은 도커의 기술적인 내용 보다는 사용자 입장에서 알아야 할 내용을 중심으로 구성됩니다.
Introduction to Docker - LOGISPOTHosang Jeon01 Docker란 무엇이며, 왜 필요한가?
02 Docker의 핵심 개념과 용어
03 Do(ckerize) it yourself
Docker란?
애플리케이션을 개발(developing)하고, 배포(shipping)하고, 실행(running)하기 위한 Open Platform
OS-level Virtualization(Linux Container)를 제공하기 위한 구현 제품.
애플리케이션과 인프라스트럭처의 의존관계를 분리할 수 있는 방법
가상머신(Virtual Machine)의 단점을 극복할 수 있는 리눅스 컨테이너 기술의 구현
Docker Client : 명령어를 통해 Docker Daemon에 API를 호출하여 Docker Image와 Container를 관리할 수 있는 프로그램
Docker Daemon : Docker API 요청을 수신하여 Docker Object(Image, Container, Network, Volue 등)를 관리할 수 있는 프로세스
Docker Registry : Docker Image를 저장하고 관리하는 공간. Public Registry(ex. Docker Hub)와 Private Registry가 있음.
Dockerfile : Docker Image를 빌드하기 위한 정보 및 명령어가 작성된 파일 (Docker Image를 생성하는 방법 중 하나)
Docker Image : Dockerfile, Docker Registry, 또는 다른 Docker Image로부터 생성된 컨테이너 생성을 위한 Read-only Template
Docker Container : Docker Image 위에서 실행된 특수한 형태의 격리된 프로세스
Introduction to Docker - LOGISPOTLOGISPOT01 Docker란 무엇이며, 왜 필요한가?
02 Docker의 핵심 개념과 용어
03 Do(ckerize) it yourself
Docker란?
애플리케이션을 개발(developing)하고, 배포(shipping)하고, 실행(running)하기 위한 Open Platform
OS-level Virtualization(Linux Container)를 제공하기 위한 구현 제품.
애플리케이션과 인프라스트럭처의 의존관계를 분리할 수 있는 방법
가상머신(Virtual Machine)의 단점을 극복할 수 있는 리눅스 컨테이너 기술의 구현
Docker Client : 명령어를 통해 Docker Daemon에 API를 호출하여 Docker Image와 Container를 관리할 수 있는 프로그램
Docker Daemon : Docker API 요청을 수신하여 Docker Object(Image, Container, Network, Volue 등)를 관리할 수 있는 프로세스
Docker Registry : Docker Image를 저장하고 관리하는 공간. Public Registry(ex. Docker Hub)와 Private Registry가 있음.
Dockerfile : Docker Image를 빌드하기 위한 정보 및 명령어가 작성된 파일 (Docker Image를 생성하는 방법 중 하나)
Docker Image : Dockerfile, Docker Registry, 또는 다른 Docker Image로부터 생성된 컨테이너 생성을 위한 Read-only Template
Docker Container : Docker Image 위에서 실행된 특수한 형태의 격리된 프로세스
[야생의 땅: 듀랑고] 지형 관리 완전 자동화 - 생생한 AWS와 Docker 체험기Sumin Byeon이 발표는 [야생의 땅: 듀랑고]의 지형 배포 시스템과 생태계 시뮬레이션 자동화 시스템에 대한 이야기를 다룹니다. 듀랑고의 각 섬은 크기와 지형, 기후 조건이 다양하고 섬의 개수가 많아서 수동으로 관리하는 것은 사실상 불가능합니다. 몇번의 사내 테스트와 베타 테스트를 거치면서 이러한 문제를 해결해주는 자동화된 도구의 필요성이 절실해졌고, 작년에 NDC에서 발표했던 생태계 시뮬레이터와 Docker, 그리고 아마존 웹서비스(AWS)를 이용하여 수많은 섬들을 자동으로 생성하고 관리하는 자동화 시스템을 구축하게 되었습니다. 그 과정에서 했던 고민들, 기존의 애플리케이션을 "Dockerizing" 했던 경험, AWS의 각 서비스들을 적절히 활용했던 이야기, AWS의 각 지역별 요금이 상이하다는 점을 이용해서 비용을 절감한 사례, 그리고 자동화 시스템의 문제점과 앞으로의 방향에 대해서 이야기 할 계획입니다.
[17.01.19] docker introduction (Korean Version)Ildoo KimDocker(도커) 소개를 위해 사용했던 자료입니다.
제가 속한 개발팀에서는 도커 컨테이너를 기반으로 개발부터 배포까지 가능한 환경 및 인프라를 구축하여 개발팀에서 대다수의 오퍼레이션까지 관여하면서 Devops 형태로 운영합니다.
Docker(도커)를 처음 사용하거나 개념적으로 익숙하지 않은 초보를 위해 만든 자료입니다.
슬라이드에서 사용된 스크립트/코드는 아래에 있습니다.
https://github.com/ildoonet/docker_introduction
----
김일두, Software Engineer @ Kakao
Github : https://github.com/ildoonet
Linkedin : https://www.linkedin.com/in/ildoo-kim-56962034/
[오픈소스컨설팅]Docker on Kubernetes v1Ji-Woong Choi- 클라우드 속의 Docker
- Docker Architecture & Build
- Docker 환경 구축
- Docker 데이터 볼륨, 이미지, 네트워킹
- Kubernetes 목적 및 활용
- Docker, Kubernetes 구성
- Docker Testing
9. 버전 관리 (Version control)
• 소스 코드를 버전으로 관리하자!
• 게임의 Save point와 비슷한 개념
• Git, Mercurial, Bazzar, Subversion, …
• 취소 (Ctrl + Z) Revert / 저장 (Ctrl + S) Commit
• 백업 Push / Pull
• 브랜치(Branch), 태그 등등
10. 버전 관리 (Version control)
• Hosting: github, Bitbucket, gitlab 등등
11. 서버 개발하기
문제: A, B, C가 시간표 서버를 같이 개발하고 싶어한다.
환경 설정 매뉴얼의 압박…
A가 시간표에 기능을 개발하는 동안
B도 다른 시간표 기능을 개발할 수 있는가?
시간표 서버가 고장났다…
다른 시간표 서버로 바로 옮길 수 있는가?
서버가 뭔가 잘못됐다…
서버를 빨리 재시작 / 재구축할 수 있는가?
13. 가상화 (Virtualization)
• 운영체제 수업에서 배운 컴퓨터 구조
Hardware
Operating System
Application
• 호스트 기반 가상 머신을 이용하는
컴퓨터 구조
Hardware
Operating System
Operating System
Application
15. 가상화 (Virtualization)
• 필요할 때마다 컴퓨터 (가상 머신) 만들기
• 웹 서비스용 VM: Ubuntu + Apache + PHP + MySQL
• 자바 수업용 VM: Windows + Java + Eclipse
• 결재용 VM: Windows + ActiveX + 공인인증모듈 + 공인인증서
• 가상 머신 관리
• 각 가상 머신별로 CPU, 메모리, 디스크 지정 가능 (나중에 변경도 가능)
• Snapshot: Save point
• 가상 머신 내보내기
• 가상 머신 가져오기
• Virtualbox, VMware, Xen, KVM..
28. Docker 활용하기
• Docker를 활용한 서버 개발하기 $ git clone ~
$ cd univ-whoareyou-server
$ docker-compose build
$ docker-compose up -d
29. Docker 활용하기
• Docker를 활용한 서버 개발하기
$ git pull ~
$ docker-compose build
$ docker-compose up -d
30. Docker를 활용해 서버 개발하기
문제: A, B, C가 시간표 서버를 같이 개발하고 싶어한다.
환경 설정 매뉴얼의 압박…? Container 실행하면 끝!
A가 시간표에 기능을 개발하는 동안
B도 다른 시간표 기능을 개발할 수 있는가? YES!
시간표 서버가 고장났다…
다른 시간표 서버로 바로 옮길 수 있는가? YES!
서버가 뭔가 잘못됐다…
서버를 빨리 재시작 / 재구축할 수 있는가? YES!
34. 참고
• https://www.docker.com/
• 도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다
http://www.slideshare.net/pyrasis/docker-fordummies-44424016
• 도커(Docker) 튜토리얼 : 깐 김에 배포까지
http://blog.nacyot.com/articles/2014-01-27-easy-deploy-with-docker/
• Docker로 보는 서버 운영의 미래
http://www.slideshare.net/deview/1a6docker
• 예제: 작년 종합설계 때 썼던 웹 서버
https://bitbucket.org/jhgod/
univ-whoareyou-server