自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

使用 Vagrant 在不同的操作系統(tǒng)上測(cè)試你的腳本

系統(tǒng)
Vagrant 可以幫助你在你的電腦上運(yùn)行其他操作系統(tǒng),這意味著你可以構(gòu)建、測(cè)試、瘋狂折騰而不毀壞你的系統(tǒng)。

[[426363]]

Vagrant 可以幫助你在你的電腦上運(yùn)行其他操作系統(tǒng),這意味著你可以構(gòu)建、測(cè)試、瘋狂折騰而不毀壞你的系統(tǒng)。

我使用 Vagrant 已經(jīng)很長(zhǎng)時(shí)間了。我使用幾種 DevOps 工具,把它們?nèi)惭b在一個(gè)系統(tǒng)上會(huì)搞得很亂。Vagrant 可以讓你在不破壞系統(tǒng)的情況下隨意折騰,因?yàn)槟愀静恍枰谏a(chǎn)系統(tǒng)上做實(shí)驗(yàn)。

如果你熟悉 VirtualBox 或 GNOME Boxes,那么學(xué)習(xí) Vagrant 很容易。Vagrant 有一個(gè)簡(jiǎn)單而干凈的界面用于管理虛擬機(jī)。一個(gè)名為 Vagrantfile 的配置文件,允許你定制你的虛擬機(jī)(稱(chēng)為 “Vagrant 盒子box”)。一個(gè)簡(jiǎn)單的命令行界面讓你啟動(dòng)、停止、暫停或銷(xiāo)毀你的“盒子”。

考慮一下這個(gè)簡(jiǎn)單的例子。

假設(shè)你想寫(xiě) Ansible 或 shell 腳本,在一個(gè)新的服務(wù)器上安裝 Nginx。你不能在你自己的系統(tǒng)上這樣做,因?yàn)槟氵\(yùn)行的可能不是你想測(cè)試的操作系統(tǒng),或者沒(méi)有所有的依賴(lài)項(xiàng)。啟動(dòng)新的云服務(wù)器進(jìn)行測(cè)試可能會(huì)很費(fèi)時(shí)和昂貴。這就是 Vagrant 派上用處的地方。你可以用它來(lái)啟動(dòng)一個(gè)虛擬機(jī),用你的腳本來(lái)配備provision它,并證明一切按預(yù)期工作。然后,你可以刪除這個(gè)“盒子”,重新配備它,并重新運(yùn)行你的腳本來(lái)驗(yàn)證它。你可以多次重復(fù)這個(gè)過(guò)程,直到你確信你的腳本在所有條件下都能工作。你可以將你的 Vagrantfile 提交給 Git,以確保你的團(tuán)隊(duì)正在測(cè)試完全相同的環(huán)境(因?yàn)樗麄儗⑹褂猛耆嗤臏y(cè)試機(jī))。不會(huì)再有“但它在我的機(jī)器上運(yùn)行良好!”這事了。

開(kāi)始使用

首先,在你的系統(tǒng)上安裝 Vagrant,然后創(chuàng)建一個(gè)新的文件夾進(jìn)行實(shí)驗(yàn)。在這個(gè)新文件夾中,創(chuàng)建一個(gè)名為 Vagrantfile 的新文件,內(nèi)容如下:

  1. Vagrant.configure("2") do |config|
  2.  
  3. config.vm.box = "ubuntu/hirsute64"
  4.  
  5. end

你也可以運(yùn)行 vagrant init ubuntu/hirsute64,它將為你生成一個(gè)新的 Vagrant 文件?,F(xiàn)在運(yùn)行 vagrant up。這個(gè)命令將從 Vagrant 倉(cāng)庫(kù)中下載 ubuntu/hirsuite64 鏡像。

  1. Bringing machine 'default' up with 'virtualbox' provider...
  2. ==> default: Importing base box 'ubuntu/hirsute64'...
  3. ==> default: Matching MAC address for NAT networking...
  4. ==> default: Checking if box 'ubuntu/hirsute64' version '20210820.0.0' is up to date...
  5. ==> default: Setting the name of the VM: a_default_1630204214778_76885
  6. ==> default: Clearing any previously set network interfaces...
  7. ==> default: Preparing network interfaces based on configuration...
  8. default: Adapter 1: nat
  9. default: Adapter 2: hostonly
  10. ==> default: Forwarding ports...
  11. default: 22 (guest) => 2222 (host) (adapter 1)
  12. ==> default: Running 'pre-boot' VM customizations...
  13. ==> default: Booting VM...
  14. ==> default: Waiting for machine to boot. This may take a few minutes...
  15. default: SSH address: 127.0.0.1:2222
  16. default: SSH username: vagrant
  17. default: SSH auth method: private key
  18. default: Warning: Remote connection disconnect. Retrying...
  19. default: Warning: Connection reset. Retrying...
  20. default:
  21. default: Vagrant insecure key detected. Vagrant will automatically replace
  22. default: this with a newly generated keypair for better security.
  23. default:
  24. default: Inserting generated public key within guest...
  25. default: Removing insecure key from the guest if it's present...
  26. default: Key inserted! Disconnecting and reconnecting using new SSH key...
  27. ==> default: Machine booted and ready!

此時(shí),如果你打開(kāi)你的 Vagrant 后端(如 VirtualBox 或 virt-manager),你會(huì)看到你的“盒子”已經(jīng)有了。接下來(lái),運(yùn)行 vagrant ssh 登錄到“盒子”。如果你能看到 Vagrant 的提示符,那么你就進(jìn)入了!

  1. ~ vagrant ssh
  2. Welcome to Ubuntu 21.04 (GNU/Linux 5.11.0-31-generic x86_64)
  3.  
  4. * Documentation: <https://help.ubuntu.com>
  5. * Management: <https://landscape.canonical.com>
  6. * Support: <https://ubuntu.com/advantage>
  7.  
  8. System information as of Sun Aug 29 02:33:51 UTC 2021
  9.  
  10. System load: 0.01 Processes: 110
  11. Usage of /: 4.1% of 38.71GB Users logged in: 0
  12. Memory usage: 17% IPv4 address for enp0s3: 10.0.2.15
  13. Swap usage: 0% IPv4 address for enp0s8: 192.168.1.20
  14.  
  15. 0 updates can be applied immediately.
  16.  
  17. vagrant@ubuntu-hirsute:~$

Vagrant 使用“基礎(chǔ)盒子”來(lái)建立你的本地機(jī)器。在我們的例子中,Vagrant 從 Hashicorp 的 Vagrant 目錄下載 ubuntu/hirsuite64 鏡像,并插入 VirtualBox 來(lái)創(chuàng)建實(shí)際的“盒子”。

共享文件夾

Vagrant 將你的當(dāng)前文件夾映射到 Vagrant “盒子”中的 /vagrant。這允許你在你的系統(tǒng)和“盒子”里保持文件同步。這很適合測(cè)試 Nginx 網(wǎng)站,通過(guò)將你的文件根目錄指向 /vagrant。你可以使用 IDE 進(jìn)行修改,“盒子”里的 Nginx 會(huì)提供這些修改。

Vagrant 命令

有幾個(gè) Vagrant 命令,你可以用它們來(lái)控制你的“盒子”。

其中一些重要的命令是:

  • vagrant up:?jiǎn)?dòng)一個(gè)“盒子”。
  • vagrant status:顯示當(dāng)前“盒子”的狀態(tài)。
  • vagrant suspend:暫停當(dāng)前的“盒子”。
  • vagrant resume:恢復(fù)當(dāng)前的“盒子”。
  • vagrant halt:關(guān)閉當(dāng)前的“盒子”。
  • vagrant destroy:銷(xiāo)毀當(dāng)前的“盒子”。通過(guò)運(yùn)行此命令,你將失去存儲(chǔ)在“盒子”上的任何數(shù)據(jù)。
  • vagrant snapshot:對(duì)當(dāng)前的“盒子”進(jìn)行快照。

試試 Vagrant

Vagrant 是一個(gè)使用 DevOps 原則進(jìn)行虛擬機(jī)管理的工具,久經(jīng)時(shí)間考驗(yàn)。配置你的測(cè)試機(jī),與你的團(tuán)隊(duì)分享配置,并在一個(gè)可預(yù)測(cè)和可重復(fù)的環(huán)境中測(cè)試你的項(xiàng)目。如果你正在開(kāi)發(fā)軟件,那么通過(guò)使用 Vagrant 進(jìn)行測(cè)試,你將為你的用戶(hù)提供良好的服務(wù)。如果你不開(kāi)發(fā)軟件,但你喜歡嘗試新版本的操作系統(tǒng),那么沒(méi)有比這更簡(jiǎn)單的方法了。今天就試試 Vagrant 吧! 

 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2018-02-07 11:15:07

Vagrant使用問(wèn)題

2020-10-26 09:00:00

LinuxVagrant操作系統(tǒng)

2010-04-30 17:53:29

2013-06-10 23:23:29

操作系統(tǒng)OS X

2021-07-28 15:59:09

蘋(píng)果 iOS系統(tǒng)

2018-01-11 09:29:56

DRaaS開(kāi)發(fā)操作系統(tǒng)

2009-12-14 17:36:18

2010-04-15 15:21:43

Unix操作系統(tǒng)

2018-01-03 08:56:31

谷歌Fuchsia操作系統(tǒng)

2010-04-15 17:21:40

Unix操作系統(tǒng)

2014-05-29 11:14:35

2012-02-20 23:02:15

Linux

2012-05-03 08:08:34

Linux攝像頭

2010-03-04 15:06:39

Python CGI環(huán)

2009-03-10 17:43:54

Linux操作系統(tǒng)磁盤(pán)陣列

2018-03-21 14:23:39

vagrant測(cè)試環(huán)境

2017-05-25 10:58:08

HBase數(shù)據(jù)庫(kù)操作系統(tǒng)

2010-01-06 15:36:30

Linux操作系統(tǒng)

2009-12-15 17:16:49

免費(fèi)在線操作系統(tǒng)

2010-04-19 15:11:25

Unix操作系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)