摘要:入門指北后端的同學(xué)用快速的可重復(fù)的創(chuàng)建各種不同環(huán)境的虛擬機(jī),來測(cè)試部署各后端程序。快速入門安裝安裝非常簡(jiǎn)單,可以在頁面選擇最新的版本安裝。將虛擬機(jī)置于休眠狀態(tài)。則會(huì)將虛擬機(jī)從磁盤中刪除。啟動(dòng)檢查狀態(tài)出現(xiàn)如上所示代表啟動(dòng)成功。
Vagrant 入門指北
后端的同學(xué)用 Vagrant 快速的、可重復(fù)的創(chuàng)建各種不同環(huán)境的虛擬機(jī),來測(cè)試部署各后端程序。對(duì)于前端同學(xué)來說,想向全棧發(fā)展,服務(wù)器相關(guān)的一些操作是繞不開的一道檻。這里先前端為視角,以 Vagrant 來引導(dǎo)大家逐步進(jìn)入服務(wù)器技術(shù)相關(guān)的領(lǐng)域。快速入門 安裝
安裝 Vagrant 非常簡(jiǎn)單,可以在Downloads 頁面選擇最新的版本安裝。Vagrant 支持 Windows、Linux、Mac 等平臺(tái)。
同時(shí)電腦中還需要再安裝virtualbox。
創(chuàng)建一個(gè)目錄用于存放 Vagrantfile 以及 Vagrant 在工作中的數(shù)據(jù)
? mkdir myvagrant ? cd myvagrant
接下來前往 vagrant 官網(wǎng)尋找一個(gè)合適的 Box,這里我選擇了 Virtualbox 版本的Centos7
以 Centos7 初始化 Vagrant 工程? vagrant init centos/7
運(yùn)行這個(gè)命令后會(huì)在當(dāng)前目錄下新建一個(gè) Vagrantfile 的配置文件。
如果本地沒有 Centos7 這個(gè)鏡像,那么接下來將會(huì)是一個(gè)漫長(zhǎng)的下載過程。在這如果實(shí)在等不下去,可以先通過別的各種途徑將 Box 下載到本地。然后再命令行中輸入如下代碼:
? vagrant box add --name centos/7 /local_download_path/virtualbox.box
通過 vagrant box list來檢查 box 是否添加成功。出現(xiàn)如下提示代表安裝成功。
centos/7 (virtualbox, 0)啟動(dòng)虛擬機(jī)
再次執(zhí)行初始化命令,并通過up命令來啟動(dòng)
? vagrant init centos/7 ? vagrant up
出現(xiàn)如下提示代表啟動(dòng)成功
Bringing machine "default" up with "virtualbox" provider... ==> default: Importing base box "centos/7"... ==> default: Matching MAC address for NAT networking... ==> default: Setting the name of the VM: myvagrant_default_1528726843301_65709 ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat ==> default: Forwarding ports... default: 22 (guest) => 2222 (host) (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: default: Vagrant insecure key detected. Vagrant will automatically replace default: this with a newly generated keypair for better security. default: default: Inserting generated public key within guest... default: Removing insecure key from the guest if it"s present... default: Key inserted! Disconnecting and reconnecting using new SSH key... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... default: No guest additions were detected on the base box for this VM! Guest default: additions are required for forwarded ports, shared folders, host only default: networking, and more. If SSH fails on this machine, please install default: the guest additions and repackage the box to continue. default: default: This is not an error message; everything may continue to work properly, default: in which case you may ignore this message. ==> default: Rsyncing folder: /work/training/vagrant/myvagrant/ => /vagrant登錄到虛擬機(jī)
輸入 vagrant ssh 登錄
此時(shí) vagrant 將使用默認(rèn)的用戶 vagrant 以及預(yù)設(shè)的 SSH 公鑰密鑰鍵值對(duì)直接登錄虛擬機(jī)。
[vagrant@localhost ~]$
切換用戶到 root,默認(rèn)密碼是 vagrant
密碼在 Linux 中是看不見的,但確實(shí)已經(jīng)輸入了
[vagrant@localhost ~]$ su Password: [root@localhost vagrant]#退出虛擬機(jī)
[root@localhost vagrant]# exit exit [vagrant@localhost ~]$ exit logout Connection to 127.0.0.1 closed.關(guān)閉虛擬機(jī)
Vagrant 提供了好幾種方法來關(guān)閉虛擬機(jī),你可以根據(jù)不同的情況選擇不同的方式。
vagrant suspend將虛擬機(jī)置于休眠狀態(tài)。這時(shí)候主機(jī)會(huì)保存虛擬機(jī)的當(dāng)前狀態(tài)。再用vagrant up啟動(dòng)虛擬機(jī)時(shí)能夠返回之前工作的狀態(tài)。這種方式優(yōu)點(diǎn)是休眠和啟動(dòng)速度都很快,只有幾秒鐘。缺點(diǎn)是需要額外的磁盤空間來存儲(chǔ)當(dāng)前狀態(tài)。
vagrant halt則是關(guān)機(jī)。如果想再次啟動(dòng)還是使用vagrant up命令,不過需要多花些時(shí)間。
vagrant destroy則會(huì)將虛擬機(jī)從磁盤中刪除。如果想重新創(chuàng)建還是使用vagrant up命令。
進(jìn)階操作 安裝 nginxNginx 是一個(gè)十分輕量級(jí)的 HTTP 服務(wù)器
接上篇登錄到虛擬機(jī),并切換到 root 用戶。
[root@localhost vagrant]# yum install -y epel-release [root@localhost vagrant]# yum install -y nginx啟動(dòng) nginx
[root@localhost vagrant]# systemctl start nginx
檢查 nginx 狀態(tài)
[root@localhost vagrant]# systemctl status nginx ● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Active: active (running) since Mon 2018-06-11 15:02:45 UTC; 57s ago Process: 2910 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 2908 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 2907 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 2912 (nginx) CGroup: /system.slice/nginx.service ├─2912 nginx: master process /usr/sbin/nginx └─2913 nginx: worker process Jun 11 15:02:45 localhost.localdomain systemd[1]: Starting The nginx HTTP and reverse proxy server... Jun 11 15:02:45 localhost.localdomain nginx[2908]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Jun 11 15:02:45 localhost.localdomain nginx[2908]: nginx: configuration file /etc/nginx/nginx.conf test is successful Jun 11 15:02:45 localhost.localdomain systemd[1]: Failed to read PID from file /run/nginx.pid: Invalid argument Jun 11 15:02:45 localhost.localdomain systemd[1]: Started The nginx HTTP and reverse proxy server.
出現(xiàn)如上所示代表 nginx 啟動(dòng)成功。
外部訪問 & 端口轉(zhuǎn)發(fā)現(xiàn)在 nginx 是啟動(dòng)到了 vagrant 中,如何在我們的電腦中直接訪問呢 ? 這里需要對(duì) vagrant 做一下端口轉(zhuǎn)發(fā)的配置。
首先退出虛擬機(jī)。編輯上一篇初始化后生成的配置文件 Vagrantfile,找到
# config.vm.network "forwarded_port", guest: 80, host: 8080
將最前邊的#號(hào)刪除并保存。
運(yùn)行 vagrant reload來應(yīng)用修改后的配置文件。
登錄虛擬機(jī),切換到 root 用戶,啟動(dòng) nginx
這時(shí)打開電腦瀏覽器輸入 http://localhost:8080/ 就能看到 nginx 的歡迎頁面了。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/39967.html
摘要:入門指北是一個(gè)高性能的和反向代理服務(wù)器。前端開發(fā)人員邁向全棧,服務(wù)器相關(guān)的技術(shù)是不可繞過的一個(gè)門檻。環(huán)境準(zhǔn)備參考入門指北快速的搭建一個(gè)虛機(jī),并默認(rèn)安裝好。鍵入編輯啟動(dòng)并檢查狀態(tài)在中上傳一個(gè)文件。參考資料服務(wù)器上建立用戶并分配權(quán)限 Nginx 入門指北 Nginx是一個(gè)高性能的HTTP和反向代理服務(wù)器。前端開發(fā)人員邁向全棧,服務(wù)器相關(guān)的技術(shù)是不可繞過的一個(gè)門檻。先以簡(jiǎn)單的nginx為切入...
摘要:菜鳥教程框架中文手冊(cè)入門目標(biāo)使用搭建通過對(duì)數(shù)據(jù)增刪查改沒了純粹占行用的拜 后端API入門學(xué)習(xí)指北 了解一下一下概念. RESTful API標(biāo)準(zhǔn)] 所有的API都遵循[RESTful API標(biāo)準(zhǔn)]. 建議大家都簡(jiǎn)單了解一下HTTP協(xié)議和RESTful API相關(guān)資料. 阮一峰:理解RESTful架構(gòu) 阮一峰:RESTful API 設(shè)計(jì)指南 RESTful API指南 依賴注入 D...
摘要:菜鳥教程框架中文手冊(cè)入門目標(biāo)使用搭建通過對(duì)數(shù)據(jù)增刪查改沒了純粹占行用的拜 后端API入門學(xué)習(xí)指北 了解一下一下概念. RESTful API標(biāo)準(zhǔn)] 所有的API都遵循[RESTful API標(biāo)準(zhǔn)]. 建議大家都簡(jiǎn)單了解一下HTTP協(xié)議和RESTful API相關(guān)資料. 阮一峰:理解RESTful架構(gòu) 阮一峰:RESTful API 設(shè)計(jì)指南 RESTful API指南 依賴注入 D...
摘要:菜鳥教程框架中文手冊(cè)入門目標(biāo)使用搭建通過對(duì)數(shù)據(jù)增刪查改沒了純粹占行用的拜 后端API入門學(xué)習(xí)指北 了解一下一下概念. RESTful API標(biāo)準(zhǔn)] 所有的API都遵循[RESTful API標(biāo)準(zhǔn)]. 建議大家都簡(jiǎn)單了解一下HTTP協(xié)議和RESTful API相關(guān)資料. 阮一峰:理解RESTful架構(gòu) 阮一峰:RESTful API 設(shè)計(jì)指南 RESTful API指南 依賴注入 D...
摘要:由兩部分組成,客戶端和服務(wù)端。其中運(yùn)行在集群上,管理,而客戶端就是一個(gè)命令行工具,可在本地運(yùn)行,一般運(yùn)行在持續(xù)集成持續(xù)交付的服務(wù)器上。命令行中的參數(shù)可以根據(jù)需要改成你自己期望的名字。 什么是Helm?這可不是暗黑破壞神里裝備的名稱:頭盔,而是Kubernetes的一個(gè)包管理工具,用來簡(jiǎn)化Kubernetes應(yīng)用的部署和管理。我們Helm和Kubernetes的關(guān)系,我們可以理解成yum...
閱讀 961·2021-11-24 09:39
閱讀 3383·2021-10-27 14:20
閱讀 2322·2019-08-30 14:08
閱讀 3361·2019-08-29 16:34
閱讀 2176·2019-08-26 12:14
閱讀 2104·2019-08-26 11:54
閱讀 2771·2019-08-26 11:44
閱讀 2474·2019-08-26 11:38