Skip to content

Instantly share code, notes, and snippets.

@overnew
Created February 26, 2024 12:24
Show Gist options
  • Save overnew/c6436458ec611712aa97ae65b1e3743d to your computer and use it in GitHub Desktop.
Save overnew/c6436458ec611712aa97ae65b1e3743d to your computer and use it in GitHub Desktop.
1VM-3container
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.box_version = "20240223.0.0"
config.vm.network "private_network", ip: "192.168.33.20" #새로운 lan 카드 생성
config.vm.synced_folder ".", "/dockerfiles" #현재 폴더를 vm의 /dockerfiles와 연동해서 사용
config.vm.provision "shell", inline: "curl -fsSL https://get.docker.com -o get-docker.sh"
config.vm.provision "shell", inline: "sh get-docker.sh"
config.vm.provision "shell", inline: "usermod -aG docker vagrant" #vagrant라는 유저 만들어서 추가
config.vm.provision "shell", inline: "echo 'sudo su -' >> .bashrc"
#각각의 docker file을 싱크된 폴더에서 빌드하고, 포트맵핑을 하여 실행시킴
config.vm.provision "shell", inline: "docker build -t nginx_jin:latest /dockerfiles/nginx; docker run -d --name nginx -p 8084:80 nginx_jin "
config.vm.provision "shell", inline: "docker build -t apache_jin:latest /dockerfiles/apache; docker run -d --name apache -p 8083:80 apache_jin"
config.vm.provision "shell", inline: "docker build -t bastion_jin:latest /dockerfiles/bastion; docker run -d --name bastion -p 5022:22 bastion_jin"
config.vm.provider "virtualbox" do |vb1|
vb1.memory = "4096"
vb1.cpus = "2"
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment