轉自(http://www.tinkingli.com/?p=25)
本篇文章主要講的是如何把做完的ET項目,完整的部署到Linux上,包括搭建文件資源服務器,安裝mongoDB數據庫,.net core的運行環境,及整個流程,整體分為三大步來走
如果是看到這篇帖子,不知道ET是什么的請移步
ET框架
運行環境:Centos7.3 + Unity2017.1.0p5 + vs2017 + ET 2.0 這里要說一下低於Centos7的沒法安裝.net core環境
第一:我先講如何把資源服務器部署到Linux上,我這里選擇了安裝簡單的APache服務,也可以安裝tomcat、Nginx或者其他http服務.但是端口一定要設置到8080。
先操作centos7服務器:
●安裝Httpd:
$ yum install httpd
●啟動httpd:
$ service httpd start 假如顯示這個錯誤:Redirecting to /bin/systemctl restart httpd.service 就用下面的這個命令,沒有則忽略
$ /bin/systemctl start httpd.service
好了,兩條命令就把httpd搭建並啟動起來了
回到本機打開網頁輸入服務器的地址:如下圖
當你看到這一步的時候你就成功了。
由於httpd默認是80端口,下來要把他修改到8080端口所以繼續回到linux操作
●修改配置文件端口為8080
$ vi /etc/httpd/conf/httpd.conf
假如你安裝了vim編輯器也可以如下命令
$ vim /etc/httpd/conf/httpd.conf
然后你搜索關於80配置的代碼也可以如下搜索
$ /80
找到如下圖的部分
將其修改為8080端口如下圖,假如你是小白沒玩過linux 你點擊Insert進行修改
修改完按esc 並輸入:wq 就保存了
下來你就需要重啟httpd服務,輸入下面命名就重啟了
●重啟httpd服務
$ service httpd restart
假如顯示這個錯誤:Redirecting to /bin/systemctl restart httpd.service 就用下面的這個命令,沒有則忽略
$ /bin/systemctl restart httpd.service
然后你回到你的電腦,輸入IP+8080,如下圖
假如你到這步看到了如上圖的圖片,證明你的httpd文件資源服務器就部署好了。
●回到unity進行操作,打開tools–>全局配置 把資源路徑改成服務器地址如下圖:
這里還有個小坑,8080端口后面記得加“/”___ http://192.168.1.39:8080這樣是不行的,記的一定要加/。
這里要感謝哲學大佬,給我一眼識出問題。點擊保存。
假如你是自己的項目並用的不是et本身的場景,假如是,就請跳過此步驟直接看打包
●打開vs找到BuildHelper類
●把exeName改成 自己的項目名字如下圖,根據自己的實際情況修改:
●然后修改場景的名字,根據自己的實際情況修改,如下圖
修改完點擊生成后就切換到unity
●然后點擊Tools–>打包工具,先選擇pc看看能不能跑起來,點擊選擇PC,打包成exe.如下圖
然后點擊開始打包,坐等打包完。
這時候切換到項目路徑,打開Release文件夾,如下圖
這時候打開文件傳輸助手,我這里用的是xftp,你們隨意
●在xftp服務器上找到“/var/www/html”的路徑,並把AB包放到html文件下如下圖:
然后切換到Release文件下,運行exe文件。當你看到unity控制台沒有錯誤的log時候就成功了,代表的資源服務器搭建完了,看到類似下圖的的log就代表成功了
第二步:安裝mongo數據庫
●本次安裝使用的是yum命令安裝,在安裝之前,我們先執行以下命令更新下yum。
$ yum update
●然后添加mongodb的yum源。
$ cd /etc/yum.repos.d/
$vim mongodb-3.4.repo
●將以下內容添加到mongodb-3.4.repo中
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https:
//repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https:
//www.mongodb.org/static/pgp/server-3.4.asc
這里可以修改
●最后再執行以下命令進行安裝:
gpgcheck=0, 省去
gpg驗證
●最后再執行以下命令進行安裝:
$ yum install -y mongodb-org 執行完命令后,耐心等待即可。
驗證是否成功
我們再來執行以下命令驗證下我們是否安裝成功:
$ mongo --version
看到這個結果說明已經安裝成功。 ●我們可以通過以下命令查看安裝后的相關文件目錄: $ whereis mongod
啟動,停止服務
●centos7以下的啟動、停止服務命令如下: $sudo service mongod start //啟動服務$sudo service mongod stop //停止服務●centos7以上的啟動、停止服務命令如下:
$ systemctl start mongod.service //啟動服務
$systemctl stop mongod.service //停止服務
$systemctl restart mongod.service //重啟服務
$systemctl status mongod.service //查看服務狀態![]()
●在終端輸入配置授權登錄mongo命令即可進入mongodb的shell腳本:![]()
●這里要聲明一下這個用戶可配可不配,因為在et中代碼沒有配置用戶名這塊,我這里配置一下但是不用, 以防以后開發的時候需要連接mongo數據庫時或者管理數據庫時需要賬號驗證所以這里先配一下。
$mongo$use admin$db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})![]()
user:用戶名pwd:密碼roles:指定用戶的角色,可以用一個空數組給新用戶設定空角色;在roles字段,可以指定內置角色和用戶定義的角色。
●我們再修改下配置文件,先在mongo腳本里輸入exit退出mongo。之后再輸入以下命令修改配置文件:
$ vi /etc/mongod.conf
如上圖修改,這里沒有mongodb基礎的人不要隨意修改這里也不要配置用戶。
這里說一下MongoDB的基礎操作。use XXXX = 創建XXXX數據庫。
在mongo腳本里輸入exit退出mongo。
到這里mongodb就完事了
第三步 在終端部署.net core的環境
此處是轉載至哲學的linux跨平台部署,由於他那個版本的et比較落后,部署起來是其實是大同小異。有經驗的這里已經不用看了
●先部署終端的.netcore的環境 linux安裝.netcore的環境這里面包括了市面的linux系統的所有安裝.netcore的方法 ●打開unity打開Tools-->全局配置。把服務器地址改成自己的服務器地址如圖,這里一定要配置,這是客戶端連接服務器端讀取的IP和端口
●打開做完的項目,這里要打開主項目Client-Server項目,右鍵點擊整個項目生成一下,我這里是沒問題的,假如有其他問題參照哲學的帖子或者在群里問
看到如上圖證明就成功了
●再給Server.APP項目安裝CommandLineParserNuGet包如下圖
●打開CMD控制台,建議管理員運行,然后移動到自己的項目下如圖,這就代表的成功了,如果是老本帶enet或者其他問題請參考哲學的帖子
Windows發布完畢之后,找到publish文件夾這里要聲明一下,舊版本的et會生成在.netcoreapp2.0的文件夾,我這個版本的是直接生成到了Bin目錄下 舊版本的是 Egametang/.netcorapp2.0/publish 我的版本是 ET-master/Bin/publish 再找到 ET-master/Config ET-master/Logs 然后移動到如圖的路徑
然后手動輸入命名行:
$ dotnet App.dll --appId=1 --appType=Manager --config=../Config/StartConfig/LocalAllServer.txt(因項目配置而異,自己項目的配置文件。)
然后如下圖,就運行成功了,
