甲骨文ARM架構雲服務器部署寶塔+.net 5.0


前言

前一段時間,甲骨文推出ARM架構的免費服務器,最高可以申請永久免費的4核,24G內存,4G帶寬(目測是G口),算是非常給力。

不過由於ARM架構的CPU。無法100%兼容x86x64的軟件,所以在部署上碰到一些坑,本文也是對部署過程的一些踩坑記錄。

 

一、選擇鏡像

建議選擇:Oracle Redhat 8.0版本。這個跟Centos差不多。主要是8相對來說問題少點。比如編譯安裝Mysql 5.7沒問題,不需要再折騰。

創建后ssh 連接上后,切換到root賬戶

sudo -i

  

二、安裝寶塔

創建好服務器,更新包、安裝BBR后,可以安裝寶塔,采用官方腳本安裝:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

  安裝完成后登錄寶塔管理平台,安裝Nginx、Mysql 5.7 等。

三、安裝.net5 SDK

由於ARM架構,不支持直接yum 安裝。采用下載二進制包進行解壓安裝:

 

 

 

 

wget https://download.visualstudio.microsoft.com/download/pr/50c2990a-2b62-4a51-b3db-8dab334f81c9/e0edfb3905b31ab030a97fa64f48cc8e/dotnet-sdk-5.0.300-linux-arm64.tar.gz

mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-5.0.300-linux-arm64.tar.gz -C $HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet
export PATH=$PATH:$HOME/dotnet

安裝后,雖然dotnet命令可以用,但是重啟后無法使用。

編輯:/etc/profile 文件,最后加上

export PATH=$PATH:$HOME/dotnet
export DOTNET_ROOT=$HOME/dotnet

可以重啟試試看是否成功。

輸入dotnet --info 能輸入信息就說明成功了。

四、進程守護,應用持久化運行

由於寶塔插件Supervisor 在ARM下面雖然安裝成功,但是卻無法運行。咨詢寶塔官方,得到解答是是用另外一個插件:堡塔應用管理器 代替使用。的確效果很好!

安裝好插件后,我們配置一下應用池

 

 

 

 添加一個dotnet的環境:就是選擇dotnet安裝的路徑

 

 

五、開設站點並上傳編譯好文件

開設站點和上傳文件,可以將編譯好文件先壓縮,再上傳到開設好的目錄,使用寶塔管理解壓。

注意,壓縮采用zip壓縮,不要采用rar壓縮,實測ARM下面,rar無法解壓。zip沒問題。

然后配置數據庫等。

 

六、開啟進程守護

選擇好文件路徑

啟動參數建議添加上 --urls http://*:5001

端口根據實際情況調整

 

 

 

 七、反向代理

添加一個反向代理

 

 

然后編輯配置文件:

#PROXY-START/
location  ~* \.(php|jsp|cgi|asp|aspx)$
{
    proxy_pass http://localhost:5000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
}
location /
{
    proxy_pass http://localhost:5000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    
    add_header X-Cache $upstream_cache_status;
    
    #Set Nginx Cache
    
        add_header Cache-Control no-cache;
    expires 12h;
}

#PROXY-END/

端口根據實際情況修改。

自此就可以正常運行了。

八、配置libgdiplus

 由於不能直接 yum install libgdiplus-devel -y

 所以,需要手動下載,編譯安裝:

wget http://download.mono-project.com/sources/libgdiplus/libgdiplus0-6.0.4.tar.gz
#解壓
tar -zxvf libgdiplus0-6.0.4.tar.gz
#進入目錄
cd libgdiplus-6.0.4
#編譯安裝
./configure --prefix=/usr
make && make install

等待漫長的編譯后。增加軟連接

ln -s /usr/lib64/libgdiplus.so /usr/lib/gdiplus.dll
ln -s /usr/lib64/libgdiplus.so /usr/lib64/gdiplus.dll

 

至此就可以了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM