SlideShare a Scribd company logo
개발기에선 잘되던데…
서버와 동일한 개발환경 꾸미기
개발기에선 잘되던데…
• Human Error or Human Virus

•환경설정의 차이
• But… 이일 저일 하다보면… 서버랑 환경이
달라져요…
해결책은?

•가상머신
• 개발기 놔두고 왜?

• 여러 사람이 사용하지 않아
오염되지 않는다.
Vagrant
• “개발과 실서버의 일치를 위한 로컬 VM을
손쉽게 빌드하자.”
Vagrant
• https://github.com/mitchellh/vagrant
• Mac OS X 10.5+, Windows 7, Debian,
Ubuntu, Redhat, CentOS, Fedora, Arch,
and Gentoo

•VirtualBox 에 의존
설치
• VirtualBox 설치
•

https://www.virtualbox.org/wiki/Downloads

• Vagrant 설치
•

http://downloads.vagrantup.com/

• 패키지 방식의
설치 권장
•

지원되는것이 없다면…
cmd> gem install vagrant

<- 루비필요
[세미나] Vagrant 이지원
Vagrant 프로젝트 셋업
• http://files.vagrantup.com/NAME.box
(lucid32, lucid64, precise32, precise64)

•http://vagrantbox.es
Vagrant 프로젝트 셋업
• VM 을 만들기 위한 이미지가 필요

•BOX
• 기본적으로 root파일시스템, Ram, Disk 사
이즈 같은 설정을 가지고 있는 기본 이미지
• Usage: vagrant box add <name> <url>

• 저장경로: %HOMEPATH%.vagrant.dboxes
[세미나] Vagrant 이지원
Vagrant 프로젝트 셋업
• cmd> vagrant init <name>
Vagrant 프로젝트 셋업
• cmd> vagrant up
Vagrant 프로젝트 셋업
• VM을 생성하고 실행하는 방법

•vagrant box add
•vagrant init
•vagrant up
어떻게 동작하는 거지?
• Command Line Interface
– vagrant [sub command]

•vagrantfile
– vagrantfile 이 생성된 디렉토리 = vagrnat 프로
젝트

–VM에 대한 모든 초기 설정을
관리
어떻게 동작하는 거지?
어떻게 동작하는 거지?
• vagrangfile 로드 순서
• gem 디렉토리의 Vagrantfile이 로드됩니다. 이것은 모든 디폴
트들을 포함하고 수정되지 않습니다.
• box가 지정이 되었다면 box 디렉토리의 Vagrantfile이 로드됩
니다. 만약 패키징할 때 --vagrantfile 옵션을 사용했다면, 이것
은 그 box 안에 패키지된 vagrantfile입니다.
• home 디렉토리(디폴트 ~/.vagrant.d/)의 vagrantfil가 있다면 그
것이 로드됩니다. 이 vagrantfile에 사용자에게 특화될 수 있는
몇 가지 디폴트값을 설정할 수 있습니다.
• 프로젝트 디렉토리의, 사용자가 수정할 수 있는 vagrantfile이
로드됩니다.
vagrantfile 의 설정들
•
•
•
•
•
•

config.vm.auto_port_range
config.vm.base_mac
config.vm.boot_mode
config.vm.box
config.vm.box_url
config.vm.customize

•

config.vm.define

•
•
•

config.vm.forward_port
config.vm.guest
config.vm.host_name

•
•

config.vm.network
config.vm.provision

•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•

config.vm.share_folder
config.nfs.map_uid
config.nfs.map_gid
config.package.name
config.ssh.username
config.ssh.host
config.ssh.port
config.ssh.guest_port
config.ssh.max_tries
config.ssh.timeout
config.ssh.private_key_path
config.ssh.forward_agent
config.ssh.forward_x11
config.ssh.shell
config.vagrant.dotfile_name
config.vagrant.host
MULTI VM
Vagrant::Config.run do |config|
config.vm.define :web do |web_config|
web_config.vm.box = "web"
web_config.vm.forward_port
end

8080, 8088

config.vm.define :db do |db_config|
db_config.vm.box = "db"
db_config.vm.forward_port
end
end

cmd> vagrant up web
cmd> vagrant ssh web

3306, 3306
Host-only Networking
Vagrant::Config.run do |config|
config.vm.define :web do |web_config|
# ...
web_config.vm.network :hostonly, "10.11.12.13"
end
config.vm.define :db do |db_config|
# ...
db_config.vm.network :hostonly, "10.11.12.14"
end
end
정리
• 실 서버 환경에 맞출려면 역시 어렵다.
• 한명이 총대 매고 box 만들면 나머지는 오
염 걱정없이 사용할 수 있다.

More Related Content

PPTX
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
PDF
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
ODP
Docker설치
PPTX
jbug-vagrant
PPTX
Node.js의 도입과 활용
PDF
Node.js 시작하기
PDF
1.intro to k8s
PDF
20141229 dklee docker
Vagrant를 이용한 개발환경 구축과 NetBeans를 이용한 C/C++개발과 리모트 디버깅
[H3 2012] 내컴에선 잘되던데? - vagrant로 서버와 동일한 개발환경 꾸미기
Docker설치
jbug-vagrant
Node.js의 도입과 활용
Node.js 시작하기
1.intro to k8s
20141229 dklee docker

What's hot (20)

PDF
manage inhouse openstack the hard way(kakao case study about 10,000 vms)
PPTX
Ch7,8. Configmaps, Secrets and API
PDF
Node.js 현재와 미래
PDF
[Nomad connection]docker seminar 15.10.08
PPTX
Docker 사용가이드 public v0.1
PDF
Dockerfile과 Bash
PDF
도커없이 컨테이너 만들기 1편
PDF
Python server-101
PPTX
랩탑으로 tensorflow 도전하기 - tensorflow 설치
PDF
도커 없이 컨테이너 만들기 2편
PDF
Docker로 서버 개발 편하게 하기
PDF
Open stack의 vm개념을 통한 docker의 활용
PPTX
Leadweb Nodejs
PDF
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
PPTX
Node.js
PPTX
Node.js + Websocket 삽질기
PDF
vert.x 를 활용한 분산서버 개발하기
PDF
도커(Docker) 메트릭스 & 로그 수집
PPTX
Vert.x
PDF
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
manage inhouse openstack the hard way(kakao case study about 10,000 vms)
Ch7,8. Configmaps, Secrets and API
Node.js 현재와 미래
[Nomad connection]docker seminar 15.10.08
Docker 사용가이드 public v0.1
Dockerfile과 Bash
도커없이 컨테이너 만들기 1편
Python server-101
랩탑으로 tensorflow 도전하기 - tensorflow 설치
도커 없이 컨테이너 만들기 2편
Docker로 서버 개발 편하게 하기
Open stack의 vm개념을 통한 docker의 활용
Leadweb Nodejs
왜 쿠버네티스는 systemd로 cgroup을 관리하려고 할까요
Node.js
Node.js + Websocket 삽질기
vert.x 를 활용한 분산서버 개발하기
도커(Docker) 메트릭스 & 로그 수집
Vert.x
[오픈소스컨설팅]Docker기초 실습 교육 20181113_v3
Ad

Viewers also liked (20)

PDF
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
PDF
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
PDF
[1A7]Ansible의이해와활용
PPTX
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
ODP
Ansible & Vagrant
PDF
Managing sensitive data with Ansible vault
PDF
Flexible, simple deployments with OpenStack-Ansible
PPTX
Ansible for Enterprise
PDF
OpenStack-Ansible Security
PDF
Ansible과 CloudFormation을 이용한 배포 자동화
PDF
Introduction to ansible
PPTX
Ansible Meetup NYC 060215
PPTX
Vagrant, Ansible, and OpenStack on your laptop
PDF
Arista: DevOps for Network Engineers
PDF
Automated Security Hardening with OpenStack-Ansible
PDF
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
PPTX
HP Advanced Technology Group: Docker and Ansible
PPTX
Deploying OpenStack with Ansible
PDF
SS42731_v2_KernerMicene
PPTX
코드로 인프라 관리하기 - 자동화 툴 소개
XE 모듈 개발 - 걸음마부터 날기까지 - 달리기
내컴에선 잘되던데? Vagrant로 서버와 동일한 개발환경 꾸미기
[1A7]Ansible의이해와활용
DEVOPS 에 대한 전반적인 소개 및 자동화툴 소개
Ansible & Vagrant
Managing sensitive data with Ansible vault
Flexible, simple deployments with OpenStack-Ansible
Ansible for Enterprise
OpenStack-Ansible Security
Ansible과 CloudFormation을 이용한 배포 자동화
Introduction to ansible
Ansible Meetup NYC 060215
Vagrant, Ansible, and OpenStack on your laptop
Arista: DevOps for Network Engineers
Automated Security Hardening with OpenStack-Ansible
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
HP Advanced Technology Group: Docker and Ansible
Deploying OpenStack with Ansible
SS42731_v2_KernerMicene
코드로 인프라 관리하기 - 자동화 툴 소개
Ad

Similar to [세미나] Vagrant 이지원 (20)

PDF
Virtual Development Environment Setting
PDF
Docker.소개.30 m
PPTX
Docker 로 Linux 없이 Linux 환경에서 개발하기
PDF
Bon voyage Docker_Kubernetes
PDF
[17.01.19] docker introduction (Korean Version)
PPTX
프로젝트용 PC 환경구성 이찬희
PDF
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
PDF
오픈 소스 사용 매뉴얼
PPTX
Valet 으로 windows php 개발 환경 구성하기
PDF
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
PPTX
RZDESK-Docker hackday
PDF
버그 트래킹 시스템 Mantis의 사용 그리고 예제
PDF
[1A6]Docker로 보는 서버 운영의 미래
PPTX
[slideshare]k8s.pptx
PDF
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
PDF
화성에서 온 개발자, 금성에서 온 기획자
PPTX
Creating autoscaling web server
PPTX
PPTX
System Infra와 Recovery 그리고 DevOps
PDF
Red Hat Enterprise Virtualization
Virtual Development Environment Setting
Docker.소개.30 m
Docker 로 Linux 없이 Linux 환경에서 개발하기
Bon voyage Docker_Kubernetes
[17.01.19] docker introduction (Korean Version)
프로젝트용 PC 환경구성 이찬희
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
오픈 소스 사용 매뉴얼
Valet 으로 windows php 개발 환경 구성하기
JCO 11th 클라우드 환경에서 Java EE 운영 환경 구축하기
RZDESK-Docker hackday
버그 트래킹 시스템 Mantis의 사용 그리고 예제
[1A6]Docker로 보는 서버 운영의 미래
[slideshare]k8s.pptx
가상머신 환경에서 리눅스 및 큐브리드 설치 가이드 20150714
화성에서 온 개발자, 금성에서 온 기획자
Creating autoscaling web server
System Infra와 Recovery 그리고 DevOps
Red Hat Enterprise Virtualization

[세미나] Vagrant 이지원