Vagrant ์ค์น ๋ฐ Provider ์ง์
- kkumtree
2023-06-19T11:12:47+09:00
Ubuntu 23.04 (Host OS)์์ ๊ฐ๋จํ๊ฒ Vagrant ์ฌ์ฉ์ ํด๋ณด๊ณ , VBox๊ฐ ์๋ Docker๋ฅผ Provider๋ก ์ง์ ํ์ฌ ์ฌ์ฉํด๋ณธ๋ค.
- WSL2 ํ๊ฒฝ์์๋ Vagrant๊ฐ ์๋ํ๋๋ก ์๋ํ์ง ์์ผ๋ฏ๋ก ์ ์: ๋ณ๋์ ์ค์ ํ์
Vagrant ์ค์น
- Ubuntu 22.04 LTS ๋ฐ 23.10 ๊ธฐ์ค, APT repo๋ฅผ ํตํ ์ค์น ์ง์
sudo apt-get install vagrant
VBox ์ค์น(์ฌ์ฉ ์)
- CPU ๊ฐ์ํ ๊ธฐ์ ํ์ฑํ ํ์(BIOS๋จ, AMD์ ๊ฒฝ์ฐ๋ SVM, Intel์ ๊ฒฝ์ฐ๋ VT-x)


- virtualbox-ext-pack(์ ํ): USB 2.0/3.0 ์ง์ ๋ฑ์ ํ์ฅ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ค๋ฉด ์ค์น
- ๊ฐ์ธ์ฉ๋์ ์ ํ์ ๋ผ์ด์ ์ค(๋์๋ฅผ ์ํ ๋ํ์ฐฝ ํ์ธ)
- ํ์ฅ๊ธฐ๋ฅ์ ์ธ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ค์นํ์ง ์๋ํจ
sudo apt-get install virtualbox
# sudo apt-get install virtualbox-ext-pack
Docker ์ค์น(์ฌ์ฉ ์)
- Ubuntu ๊ธฐ์ค, ์๋ 3๊ฐ์ง ์ค์น ๋ฐฉ๋ฒ์ด ์์ผ๋ฏ๋ก, ์น์ํ ๋ชจ๋๋ก ์งํ
sudo snap install docker # ์ต์ ๋ฒ์
sudo apt-get install docker.io
sudo apt-get install podman-docker
- Docker ๊ถํ ๋ถ์ฌ: ๋ผ์ด๋ธ ์๋น์ค ์ ๊ถํ ์ ์ (Docker Docs)
- Docker ๊ทธ๋ฃน์ ํ์ฌ ์ฌ์ฉ์ ์ถ๊ฐ
- Docker ๊ทธ๋ฃน์ ์ํ ์ฌ์ฉ์๋ sudo ์์ด๋ Docker ์ฌ์ฉ ๊ฐ๋ฅ
sudo addgroup --system docker
sudo adduser $USER docker
newgrp docker
- (์ฐธ๊ณ ) Docker ๊ณต์ Docs์ ์์ ๋ Docker Engine ์ค์น ๋ฐฉ๋ฒ
- Docker Docs: Install Docker Engine on Ubuntu
Vagrantfile ์์ฑ
VBox ์ฌ์ฉ ์
- Snippet: Gist
- CPU: 1Core / RAM: 1024MB
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.define "ubuntu" do |ubuntu|
ubuntu.vm.hostname = "kkumtree-server"
ubuntu.vm.provider "virtualbox" do |vb|
vb.name = "ubuntu-server"
vb.cpus = 1
vb.memory = 1024
end
ubuntu.vm.network "private_network", ip: "192.168.56.99"
ubuntu.vm.provision "shell", inline: <<-SCRIPT
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
sudo useradd kkumtree -m -s /bin/bash
sudo usermod -a -G sudo kkumtree
echo kkumtree:kkumtree | sudo chpasswd
sudo systemctl restart sshd
SCRIPT
end
end
Docker ์ฌ์ฉ ์
- Vagrantfile๊ณผ Dockerfile์ ๊ฐ์ ํด๋์ ์์์ ์ ์ , ์๋ ๊ฒฝ์ฐ d.build_dir ํ๋ผ๋ฏธํฐ ์์ .
- ์๋์ฒ๋ผ ๋ค๋ฅธ ํด๋๋ฅผ ์ง์ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅ
