Dec 20, 2016 Vagrant English
Vagrant 允許我們使用 Rsync 自動同步檔案至虛擬環境中,但內建的自動同步機制穩定性、效率不夠完美,因此本篇將介紹如何在 macOS 上透過安裝 Vagrant 套件 (vagrant-gatling-rsync) 來讓自動同步檔案更加完美。
基本上,macOS 已經替你預先安裝好 Rsync,所以不需要特別安裝 (但版本較舊),但是你仍然可以透過 Homebrew 升級 Rsync。利用下面指令瞭解目前 Rsync 版本:
rsync --version
接著安裝套件:
# 列出已安裝 Vagrant 套件
vagrant plugin list
# 安裝 vagrant-gatling-rsync
vagrant plugin install vagrant-gatling-rsync
開啟你的 Vagrant Machine 設定檔 ( Vagrantfile ),將下面設定加入:
...
# 啟用 Rsync
config.vm.synced_folder "/path/to/local/folder", "/path/to/vm/folder",
type: "rsync",
rsync__exclude: [".git/", "*.swp"]
# 設定 vagrant-gatling-rsync 參數
if Vagrant.has_plugin?("vagrant-gatling-rsync")
config.gatling.latency = 1.0
config.gatling.time_format = "%H:%M:%S"
end
# True 表示啟動虛擬環境時也啟用自動同步
config.gatling.rsync_on_startup = true
...
vm.synced_folder 後兩個參數需指定絕對路徑,而 rsync__exclude 則可以指定多個要排除的檔案名稱、類型。
若你有按照上述的步驟且設定 config.gatling.rsync_on_startup = true,當你啟動 Vagrant 虛擬環境時 vagrant-gatling-rsync 也會跟著啟動,因此它會開始監控檔案是否有異動,若有異動則開始自動同步。
若對於文章內容有任何建議與指正,非常歡迎你告訴我或者與我一起討論 ! :)
zeckli.devforgalaxy@gmail.com © 2015-2019 zeckli, thanks to Jekyll and GitHub.