베그란트에서 윌노엔 항구로 향하고 있습니다.
6814 단어 Vagrant
목표
스마트폰 단말기에서 Mac OS X의 Vagrant(Virtualbox)에서 실행되는 CentOS는 HTTP/HTTPShttp://example.com와https://example.com 등에서 특별한 포트 번호를 지정하지 않고 접근할 수 있다.
이를 위해 루트 권한을 사용하여 Vagrant를 시작하고 호스트의 시작 포트(80443)를 게스트의 동일한 포트로 전달합니다.
단계
키 파일 설정
vagrant up
VM을 시작할 때의 동작은 다음과 같습니다.
키 파일 설정
vagrant up
VM을 시작할 때의 동작은 다음과 같습니다.vagrant
명령 중 하나를 실행할 때 생성~/.vagrant.d/insecure_private_key
authorized_keys
에서 사전등록insecure_private_key
실행
vagrant up
시 사용insecure_private_key
VM에 연결이번에는 파일을 변경하지 않기 위해 키 파일을
vagrant up
생성하여 루트의 홈 디렉터리 vagrant status
로 복사합니다.# 鍵を生成
$ vagrant status
# 鍵を設置
$ sudo mkdir /var/root/.vagrant.d
$ sudo cp ~/.vagrant.d/insecure_private_key /var/root/.vagrant.d/insecure_private_key
$ sudo chown root:wheel /var/root/.vagrant.d/insecure_private_key
가상 머신 시작
일반과 달리
/var/root
를 사용하여 가상 시스템에 연결하기 때문에 이 설정을 설명하는 /var/root/.vagrant.d/insecure_private_key
아래에서 가상 시스템을 시작합니다.Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# Box
config.vm.box = "centos_6.5"
config.vm.box_url = "http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6.5_chef-provisionerless.box"
# Key
config.ssh.private_key_path = "/var/root/.vagrant.d/insecure_private_key"
# Network
config.vm.network "forwarded_port", guest: 80 , host: 80
config.vm.network "forwarded_port", guest: 443, host: 443
end
$ sudo vagrant up
$ sudo vagrant ssh
확인
가상 시스템에 아파치 등을 설치하고 호스트 OS의 브라우저에 연결http://127.0.0.1하면 index 파일을 열람할 수 있습니다.
인터넷 공유 활성화
Vagrantfile
, 인터넷 공유를 활성화합니다.스마트폰 단말기에서 액세스하려면 IP 주소를 확인하십시오.기본값은 192.168.2.1/24입니다.
$ ifconfig bridge0
확인
스마트폰 단말기에서 운영자의 회선을 닫고 인터넷 공유 네트워크에 참여한 상태http://192.168.2.1(위에서 확인한 주소)에서 index 파일에 접근할 수 있다면 인터넷 공유는 성공적이다.
DNS 서버 구축
그래도 가상 시스템에 액세스할 수 있지만 호스트 이름으로 액세스하기 위해 Mac OS X는 DNS 서버가 됩니다.
# インストール
$ brew install unbound
# バックアップ
$ cp /usr/local/etc/unbound/unbound.conf /usr/local/etc/unbound/unbound.conf.org
# 上書き
$ vim /usr/local/etc/unbound/unbound.conf
$ cat /usr/local/etc/unbound/unbound.conf
server:
username: nobody
interface: 0.0.0.0
access-control: 192.168.2.0/24 allow
local-data: "example.com A 192.168.2.1"
# 起動
$ sudo unbound -v -d -c /usr/local/etc/unbound/unbound.conf
확인
스마트폰 단말기 접근unbound에서 인덱스 파일을 열람할 수 있다면 DNS 서버의 설정은 성공적이다.
지원
공유 사라짐 정보
Vagrant1.5에 추가된 http://example.com 를 사용하면 외부에서 액세스할 수 있는 URL이 생성됩니다.
하지만 개발을 위해 URL을 고정해야 하는 경우 등 대응하지 못하는 경우도 있기 때문에 이 방법도 유용할 것 같은데...
루트 권한으로 시작 정보
Vagrant의 Vagrant Share 중에는 추천하지 않으며, 많은 강좌들도 윌노언 항구 이외의 곳에서 전진한다.
하지만 방법을 먼저 남겨두면 쓸모가 있을 때...host (int) - The port on the host that you want to use to access the port on the guest. This must be greater than port 1024 unless Vagrant is running as root (which is not recommended).
DNS 캐시 정보
DNS 설정이 실패한 상태에서 액세스가 실패하면 스마트폰 단말기에 DNS 캐시가 유지되고 나중에 액세스가 계속 실패할 수 있습니다.
다음 절차에 따라 DNS 캐시를 제거하고 다시 액세스하십시오.
host (int) - The port on the host that you want to use to access the port on the guest. This must be greater than port 1024 unless Vagrant is running as root (which is not recommended).
Reference
이 문제에 관하여(베그란트에서 윌노엔 항구로 향하고 있습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/muniere/items/1427858fef65650d8322텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)