바삭 바삭한 시작 Vagrant
5432 단어 Vagrant
필요한 것
설치에 특히 어려운 일은 없다고 생각하므로 생략.
인스톨러 포치포치.
큰 파일을 다른 저장소에 넣고 싶은 사람은
SSD+HDD 구성한 머신에서는 큰 파일을 HDD로 옮기고 싶은 사람이 대부분이라고 생각하기 때문에, 이하의 설정을 넣어 둔다.
VirtualBox의 기본 가상 머신 폴더 이동
파일 -> 환경 설정 -> 일반 -> 기본 가상 시스템 폴더의 경로를 변경합니다.
환경 변수 VAGRANT_HOME 설정
VAGRANT_HOME
로 설정한 경로에 다운로드한 박스가 저장된다.시작할 VM 이미지 찾기
여기에서 시작하고 싶은 OS의 box를 찾는다.
Vagrant Cloud
이번에는 CentOS 7의 box를 기동해 본다.
Vagrantfile 생성
box의 페이지를 보면 「How to use this box with Vagrant:」의 「New」곳에 VM 기동까지의 커멘드가 실려 있으므로, 일단
vagrant init centos/7
의 부분만 실행해, Vagrantfile 를 생성한다.명령 프롬프트와 터미널에서 적절한 디렉토리를 만들고 해당 디렉토리에서
vagrant init <box名>
를 실행하십시오.>vagrant init centos/7
==> vagrant: A new version of Vagrant is available: 2.2.0!
==> vagrant: To upgrade visit: https://www.vagrantup.com/downloads.html
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
이제 현재 디렉토리에 Vagrantfile이 생성됩니다.
Vagrantfile 편집
최저한 호스트의 스펙에 맞추어 VM에 할당하는 자원의 조정 정도는 하고 싶기 때문에, 생성된 Vagrantfile의 이하의 부분의 코멘트 아웃을 제외해, CPU 코어수, 메모리의 할당을 지정한다.
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = false # true → falseに
# Customize the amount of memory on the VM:
vb.memory = "1024" # 割り当てたいメモリサイズ(MB)の指定
vb.cpus = "2" # 割り当てたいCPUコア数の指定
end
VM 부팅
여기까지 설정할 수 있으면, 나머지는 Vagrantfile을 설치하고 있는 디렉토리내에서
vagrant up
를 실행하면(자), 처음에는 box가 다운로드되어 VM가 기동한다.>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'centos/7' could not be found. Attempting to find and install...
(略)
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
default: No guest additions were detected on the base box for this VM! Guest
default: additions are required for forwarded ports, shared folders, host only
default: networking, and more. If SSH fails on this machine, please install
default: the guest additions and repackage the box to continue.
(略)
VM 작업
기동한 것 같기 때문에 조속히 만져 본다. 그대로 같은 디렉토리내에서
vagrant ssh
를 실행.>vagrant ssh
Last login: Sat May 4 02:29:57 2019 from 10.0.2.2
[vagrant@localhost ~]$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
제대로 움직이고 있다.
VM 종료
VM에서 빠져
vagrant halt
로 종료합니다.>vagrant halt
==> default: Attempting graceful shutdown of VM...
VM내에서
shutdown -h now
어쨌든 문제 없었지만, Vagrant적으로 어떨까…VM 및 박스 삭제
불필요하게 되어 지울 경우.
VM 삭제
그대로 같은 디렉토리내에서
vagrant destroy
를 실행.>vagrant destroy
default: Are you sure you want to destroy the 'default' VM? [y/N] y
==> default: Destroying VM and associated drives...
괴롭힌 VM을 쭉 더 하고 싶은 경우도
vagrant destroy
한 후에 다시 vagrant up
하는 것이 좋을지도.박스 삭제
box도 필요없는 경우는 스스로 지워줄 필요가 있다. 우선
vagrant box list
에서 취득한 box의 확인.>vagrant box list
centos/7 (virtualbox, 1902.01)
ubuntu/xenial64 (virtualbox, 20181120.0.0)
그리고 삭제.
vagrant box remove <box名>
실행.>vagrant box remove centos/7
Removing box 'centos/7' (v1902.01) with provider 'virtualbox'...
확인.
>vagrant box list
ubuntu/xenial64 (virtualbox, 20181120.0.0)
제대로 사라진 것 같다.
일단 이것만 기억해 두면, 조금 사용하는 정도라면 곤란하지 않을 것. 웹 서버 올려 호스트에서 액세스하거나 Docker를 사용하면 네트워크 설정을 괴롭힐 필요가 있지만, 그것은 또 별도로 정리할까 ...
Reference
이 문제에 관하여(바삭 바삭한 시작 Vagrant), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hotaru51/items/40bc0a326b9cb5167ce6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)