Tag Archives: Vagrant

Windows Host File Location – Host 檔案路徑

和朋友嘗試建立一個比較完整的Development Environment
我們使用了Vagrant 來做我們的Server, 所有程式碼都會在裡面執行
這可以排除程式只在local version 可以成功執行的問題
為了環境一致

我們還建立了一個developmenthost name
朋友叫我在電腦上的 host file加入以下的句子

192.168.56.101    sharechiwai.dev

之後在browser上輸入sharechiwai.dev 便會自動map 到 這個IP 上
192.168.56.101

192.168.56.101 是vagrant的 default IP

如果想在同一IP address上 map 到不同的 host/domain 我們需要把所有的 hostname/domain 加在同一行
以空間分開

e.g.

192.168.56.101    sharechiwai.dev chi.dev

Host File Content
那麼在Windows 上的 Host file 儲存在那裡呢?
他是存在以下路徑的

C:\Windows\System32\drivers\etc

Windows Host file path
Hope you find it useful

Vagrant Notes forward multiple ports on the same machine – 如何在Vagrant上 Port Forward Multiple Port?

開始常常用Vagrant 來嘗試建立自己的VPS
今日又出現了小小的問題需要上網
如何在Vagrant上 Port Forward Multiple Port呢?

解決方法十分簡單…
我們只需要在VagrantFile 上在不同的Port forward上加上以下的設定便可以了

# config.vm.network "forwarded_port", guest: [port], host: [port]
  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.network "forwarded_port", guest: 22, host: 22

E.G.

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.provision "shell", path: "provision.sh"

  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.network "forwarded_port", guest: 22, host: 22
end

Hope you find it useful

小小Vagrant/ Linux 筆記 – Ubuntu Unattended Upgrade

小小筆記
最近又繼續玩Vagrant
不知道為什麼嘗試用Official 的Vagrant Ubuntu 16.04 Image時常常出現問題..
不能SSH 到這個Vagrant Box
所以便想在Provision 時更新這個系統了

那麼如何可以令Linux 可以Unattended地更新
解決方法
我們可以執行以下指令

sudo do-release-upgrade -f DistUpgradeViewNonInteractive

Hope you find it useful

How to check if User Exist on Linux – 如何在Linux 上檢查使用者存在

最近和朋友建立了一個Sample Project
來幫自己學習如何建立一個良好的開發環境
由於六月小弟去了差不多一個月旅遊..
朋友在有空的時候已經用Vagrant建立了一個開發環境
還有把所有的code 放了在Bitbucket上..
我只要clone 下來之後執行readme 入的command 便可以開始開發了…
username / password

誰不知..小小的問題出現了…
不知道為什麼我不能SSH 到這一個vagrant 的VM上..
但是在Virtual Box 內只需要輸入 “vagrant“為使用者便可以登入..
readme內的 username/password 登入時..linux 說”Login Incorrect

所以便想到登入為”vagrant“後
再用指令去查詢

解決方法
我使可以使用 “getent passwd“指令
因為passwd存了所有的user info

查看user 使用者 存不存在

getent passwd userNameHere
getent passwd user1

Linux Check if user exist
查看user group 存不存在
我使可以使用 “getent group“指令到

getent group groupNameHere
getent group usergroup1

Check if user group exist on linux
如果沒有東西輸出的話..說明了..找不到資料
Hope you find it useful

Packer hide Virtual Machine GUI – Packer 如何在建立Virtual Machine時 把介面隱藏

在使用Packer的時候 Virtual Box 自動彈出了他的VirtualBox GUI出來
我們可以看到安裝的過程, 十分有趣
但是亦都有些擾亂自己..
因為無端端多了個Applicationscreen上出現

如果我們不在執行 Packer
彈出Virtual Machine的介面
我們可以在 Packer的 Template 檔案上把 Headless的設定為 True

headless (boolean) – Packer defaults to building VirtualBox virtual machines by launching a GUI that shows the console of the machine being built. When this value is set to true, the machine will start without a console.
E.G.

  "disk_size": "{{user `disk_size`}}",
    "headless": "true",
    "http_directory": "http",

Packer Hide Virtual Machine UI during Build - Headless = true
Hope you find it useful