Languages: [EN] English | [KO] 한국어
Overview 소개
Although this article predates the release of WSL, the methods described are still useful. The reason for setting up a server environment using a virtual machine on a personal PC is the convenience it offers in terms of management. If the OS is Linux, it can be easily configured using chroot, and for FreeBSD, jails is an option. In this case, the setup was done with the configuration: Host (Windows) + Guest (Linux) + VMware.
* 현재 글은 WSL이 나오기 이전의 글이지만 아직도 유용한 방법 *
개인 PC에서 가성 머신을 이용한 서버 환경을 만드는 이유는 관리상의 편리함 입니다.
OS 가 리눅스면 chroot, FreeBSD 면 jails 로 쉽게 설정 가능 하지만
Host:윈도우 + Guest(Linux) + VMware 의 구성으로 설치하였습니다.
Configuration 구성
- Sharing the host's working folder and mounting it to the web server's root
- Port forwarding
- Working folder
- Web server
- Database
- Shared working folder
- 호스트의 작업 폴더를 공유하여 웹 서버의 루트에 마운트
- 포트 포워딩
- 작업 폴더
- 웹 서버
- 데이터베이스
- 작업 폴더 공유
Set up - Virtual Machine(VMware) 설정 - 가상머신(VMware)
- To configure a shared folder: VM -> Settings -> Options -> Shared Folders
- 공유 폴더 설정은 VM -> Setting -> Options -> Shared Folders
Set up - Host (Windows) 설정 - Host (Windows)
netsh interface portproxy add v4tov4 listenport=80 connectport=80 listenaddress=0.0.0.0 connectaddress=192.168.0.2
listen
refers to the Host, andconnect
refers to the Guest- Guest OS IP:
connectaddress
- Host OS port:
listenport
- Ensure that port 80 is open before specifying the port (
listenport
). It is essential to check your router and firewall settings.
netsh interface portproxy add v4tov4 listenport=80 connectport=80 listenaddress=0.0.0.0 connectaddress=192.168.0.2
- listen 은 Host, connect 는 Guest
- Guest OS IP: connectaddress
- HOST OS 포트: listenport
- 80번 포트가 열려 있는지 확인 후 포트 지정(listenport) 을 해야 합니다, 사용하는 공유기, 방화벽 확인 필수
- Command to check:
netsh interface portproxy show all
- Reset configuration:
netsh interface portproxy reset
- Usage guide:
netsh interface portproxy
netsh interface portproxy show all
확인 명령어netsh interface portproxy reset
설정 초기화netsh interface portproxy
사용법 안내
Set up - Guest (Linux) 설정 - Guest (Linux)
mount -t vmhgfs .host:/Work /var/www/
- "Work" is the name shared by the virtual machine.
echo '.host:/Work /var/www vmhgfs defaults,noauto 0 0' >> /etc/fstab
echo 'vmhgfs' > /etc/modules-load.d/vmhgfs.conf
perl -pi -e 's|exit 0|/bin/mount /var/www\nexit 0|g' /etc/rc.local
- If
perl
is not installed or system settings prevent modification, manually add/bin/mount /var/www
to/etc/rc.local
. Add it right aboveexit 0
. This method is more convenient than adding a udev rule.
vmhgfs
does not work:
echo '.host:/Work /var/www fuse.vmhgfs-fuse rw,allow_other,defaults,noauto 0 0' >> /etc/fstab
mount -t vmhgfs .host:/Work /var/www/
- "Work" 는 가상머신에서 공유한 이름
echo '.host:/Work /var/www vmhgfs defaults,noauto 0 0' >> /etc/fstab
echo 'vmhgfs' > /etc/modules-load.d/vmhgfs.conf
perl -pi -e 's|exit 0|/bin/mount /var/www\nexit 0|g' /etc/rc.local
- perl 이 없거나 시스템 설정이 달라 추가가 안된다면 /etc/rc.local 에 "/bin/mount /var/www" 를 추가하시면 됩니다, exit 0 바로 윗 라인에 추가하시면 됩니다. udev 룰 추가보다 이게 편합니다.
echo '.host:/Work /var/www fuse.vmhgfs-fuse rw, allow_other,defaults,noauto 0 0' >> /etc/fstab
Comments
Post a Comment