天天看點

基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端

作者:Kalrase

## pm2 ubuntu multipass 輕量虛拟機

1、安裝multipass 虛拟機,下載下傳位址:

https://multipass.run/
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端

2、安裝後檢視版本

multipass version           

3、建立容器

multipass launch --name dg           

4、下載下傳最新的鏡像

multipass exec dg -- lsb_release -d           

5、檢視虛機清單

multipass list           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端

6、檢視虛機詳細資訊

multipass info --all           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端

7、進入虛拟機

multipass shell dg           

8、重新開機、暫停虛機

# 暫停

$ multipass stop dg

# 啟動

$ multipass start dg           

9、删除/釋放虛拟機

# 删除

$ multipass delete dg

# 釋放

$ multipass purge dg           

10、配置自動化

既要保持開發環境和線上環境一緻,又要節省部署時間。我們可以使用 --cloud-init 對容器進行初始化配置:

$ multipass launch --name ubuntu --cloud-init config.yaml           

config.yaml 是初始化配置檔案,内容如下:

#cloud-config

runcmd:

- curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

- sudo apt-get install -y nodejs

- wget https://releases.leanapp.cn/leancloud/lean-cli/releases/download/v0.21.0/lean-cli-x64.deb

- sudo dpkg -i lean-cli-x64.deb           
安裝nodeJS、nvm、 pm2

1、安裝nvm

在安裝nvm之前先安裝git

sudo apt-get install git

#拉取nvm項目

git clone https://gitee.com/Annlix/nvm-sh_nvm.git ~/.nvm && cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`

#執行安裝指令

./install.sh

#安裝之後輸入nvm還是提示沒有這時候需要執行以下指令或者關閉終端重新開啟

source ./nvm.sh

#擷取node版本

nvm ls-remote           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
#安裝node

nvm install v16.13.1

#安裝pm2

sudo npm i -g pm2

or 安裝最新發行版

nvm install --lts           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
開啟服務
pm2 start app.js

pm2 list

pm2 dash           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
映射虛機服務到本機ip,使得區域網路主機可以通路

管理者賬号打開cmd

netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=4202 connectaddress=172.18.207.164 connectport=1337           

檢視 本機映射關系

netsh interface portproxy show all           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端
檢視pm2 啟動的node 服務端口号

方式1

lsof -i -P | grep node           

方式2

ss -tnlp | grep node           

根據端口号檢視pid

lsof -i :1337           
基于multipass虛機使用next.js&ant-design-mobile搭建 ssr服務端

更多pm2操作,檢視https://blog.csdn.net/uikoo9/article/details/79018750

繼續閱讀