給大家科普一下開豐娛樂平臺注冊時間(2022已更新(今日/知乎)
前言
事情是這樣的,前段時間在值得買看到了一篇如何搭建 DNF 臺服的文章,看了之后心中的勇士之魂蠢蠢欲動,于是自己搭了一個玩玩。但是搭建 DNF 臺服是有系統(tǒng)限制的,只有在 centOS 上網(wǎng)能用,而且還有版本限制,網(wǎng)上大多都是使用 centOS 5.8 系統(tǒng),我實測 cetnOS 6.11 也行。但這兩個系統(tǒng)已經(jīng)廉頗老矣,特別是 cetnOS 5.8,官方早已停止維護(hù),各大云服務(wù)廠商甚至都不會提供這個系統(tǒng),就算能安裝,更新源文件也麻煩。
就在這個時候,突然就想到還有 Docker 這么好用的玩意,上面 Docker Hub 一搜,果然有鏡像,馬不停蹄地搭了一個試試。順便分享一下教程。
這篇文章就可以幫助你在任何支持 Docker 的機(jī)器上搭建一個免費(fèi)的設(shè)備 DNF 臺服。本文需要用到 SSH 命令行操作,可能會勸退一部分人,但我還是建議你看完,純命令行的搭建難度也不是很高,如果你用群暉之類的 Linux 系統(tǒng)的 NAS 完全可以用純 UI 界面搭建。
需要準(zhǔn)備的東西
一個裝有 Linux 系統(tǒng)的電腦/服務(wù)器/VPSDNF 臺服客戶端(鏈接私聊) 提取碼:fybn網(wǎng)關(guān)文件(鏈接私聊) 提取碼:2333PUTTY會用鍵盤的人需要把網(wǎng)關(guān)文件補(bǔ)丁覆蓋到客戶端文件夾內(nèi)(鏈接私聊),提取密碼:2333建議可以先開始下載,一邊下載一邊看教程。
理論上所有能夠運(yùn)行 Docker 的 Linux 系統(tǒng)都能安裝(WINDOWS 沒測試過),包括那些 NAS 系統(tǒng),比如:群暉 DSM、威聯(lián)通 QNAP、UNRAID、TrueNAS 等等。這里我用 Ubuntu 2104 虛擬機(jī)來演示。
SSH 登陸
打開 PUTTY,輸入服務(wù)器的 IP 用戶名密碼的參數(shù),點(diǎn)擊登陸。

輸入 IP 地址
依次輸入用戶名和密碼

更新以及安裝 Docker
連接到服務(wù)器第一件事就是獲取 root 權(quán)限和更新一下軟件源。
sudo -iapt update先安裝一個 Docker,下面用到官方的腳本進(jìn)行安裝。
curl -sSL <https://get.docker.com/> | shdocker --version #如果有版本信息反饋表示安裝成功
安裝成功后的反饋
設(shè)置 SWAP 虛擬內(nèi)存
因為這個 DNF 臺服容器非常消耗內(nèi)存,作者推薦設(shè)置 8G SWAP 虛擬內(nèi)存,所以我們這就來設(shè)置一下。如果你的機(jī)器已經(jīng)大于 8G 內(nèi)存,可以跳過這一步。
先輸入下面的命令
swapon --show
Ubuntu 默認(rèn)創(chuàng)建的 SWAP
從返回的命令可以看到現(xiàn)在系統(tǒng)內(nèi)已經(jīng)有 4G SWAP,存儲在 /swap.img 文件里,顯然只有 4G 是不夠的,我們要把它刪了重新新建一個。
刪除 SWAP
swapoff -v /swap.img刪除 fastab 文件最后一行 swap 的配置文件下,命令如下:
nano /etc/fstab
刪除最后一行所有內(nèi)容
刪除完后按 Crtl + X 推出,Y 保存,回車確定。
rm /swap.img這里就已經(jīng)成功把 SWAP 卸載。
創(chuàng)建 SWAP
下面創(chuàng)建一個文件并設(shè)置為 swap。
fallocate -l 8G /swapfilechmod 600 /swapfilemkswap /swapfileswapon /swapfilenano /etc/fstab在最后一行粘貼以下內(nèi)容,然后按 Crtl + X ,再按 Y ,再按回車。
/swapfile swap swap defaults 0 0

把上面的代碼粘貼到最后一行
最后輸入命令看一下返回的信息,如果和我下面一樣就表示成功了。
swapon --show
最下面的返回結(jié)果已經(jīng)顯示 8G
創(chuàng)建數(shù)據(jù)庫
首先創(chuàng)建一個文件夾用于存放數(shù)據(jù)庫和日志等文件。
mkdir /dnf把鏡像拉回到本地并初始化數(shù)據(jù)庫 (下面一整段復(fù)制粘貼到終端)。
docker run --rm -v /dnf/log:/home/neople/game/log -v /dnf/mysql:/var/lib/mysql -v /dnf/data:/data 1995chen/dnf:stable /bin/bash /home/template/init/init.sh
這里如果顯示出這個數(shù)據(jù)庫正在啟動的界面就代表成功了,這里會在前臺跑一個生成數(shù)據(jù)庫的腳本,并不是卡住了,要耐心等大概 10 分鐘就行了。

容器創(chuàng)建成功,數(shù)據(jù)庫正在啟動
顯示這個界面就代表初始化已經(jīng)完成了(主要看最后三行)。初始化完成后容器會自動刪除。

數(shù)據(jù)庫創(chuàng)建成功
搭建服務(wù)器端
接下來第二步就是重新啟動容器并加上其他一些必要的參數(shù)。命令我放到下面,如果前面你的文件路徑設(shè)置和我完全一樣,下面這些命令直接復(fù)制粘貼,如果修改了位置,那下面的三個 -v 參數(shù)前面的路徑請?zhí)鎿Q成自己設(shè)置的路徑。
docker run -d --name=dnf -e PUBLIC_IP=192.168.5.235 -e DNF_DB_ROOT_PASSWORD=88888888 -e GM_ACCOUNT=gm_user -e GM_PASSWORD=gm_pass -v /dnf/log:/home/neople/game/log -v /dnf/mysql:/var/lib/mysql -v /dnf/data:/data -p 3000:3306/tcp -p 7600:7600/tcp -p 881:881/tcp -p 20303:20303/tcp -p 20303:20303/udp -p 20403:20403/tcp -p 20403:20403/udp -p 40403:40403/tcp -p 40403:40403/udp -p 7000:7000/tcp -p 7000:7000/udp -p 7001:7001/tcp -p 7001:7001/udp -p 7200:7200/tcp -p 7200:7200/udp -p 10011:10011/tcp -p 31100:31100/tcp -p 30303:30303/tcp -p 30303:30303/udp -p 30403:30403/tcp -p 30403:30403/udp -p 10052:10052/tcp -p 20011:20011/tcp -p 20203:20203/tcp -p 20203:20203/udp -p 30703:30703/udp -p 11011:11011/udp -p 2311-2313:2311-2313/udp -p 30503:30503/udp -p 11052:11052/udp --cpus=1 --memory=1g --memory-swap=-1 --shm-size=8g --restart always 1995chen/dnf:stable
PUBLIC_IP 等號后面填你服務(wù)器的公網(wǎng) IP,我已經(jīng)在命令行上用粗字標(biāo)注了,如果你是局域網(wǎng)內(nèi)搭建的,可以和我一樣填內(nèi)網(wǎng) IP。(這個一定要改)
-e 參數(shù)可以自行設(shè)置數(shù)據(jù)庫賬號密碼
-v 參數(shù)可以自行設(shè)置數(shù)據(jù)庫等位置
輸入完命令之后會有一個反饋提示。

我們先用命令查看容器有沒有在后臺運(yùn)行,如果有返回結(jié)果表示容器在后臺運(yùn)行。
docker ps
可以看到容器在后臺運(yùn)行中
稍稍等候兩到三分鐘后,輸入下面的命令查看日志。
grep -rHi GeoIP Allow Country Code /dnf/log如果沒有返回信息稍等片刻再輸入一次試試,直到有反饋信息為止。看到這里有返回了地區(qū)信息,就代表服務(wù)端已經(jīng)搭建并啟動成功了。

出現(xiàn)多個區(qū)域代碼表示服務(wù)器成功搭建并啟動
客戶端設(shè)置
離成功就差最后一步了?,F(xiàn)在的操作就要回到我們熟悉的桌面操作了。下載并解壓文章前面給的網(wǎng)關(guān)文件。
打開前面下載的統(tǒng)一網(wǎng)關(guān),點(diǎn)到第二項,把你的服務(wù)器地址填上,如果你上面沒有修改 Docker 參數(shù)的話,可以直接抄我的作業(yè)(IP 除外)。確保服務(wù)器防火墻放行了對應(yīng)端口和所有參數(shù)都填好了以后點(diǎn)擊一下連接。

復(fù)制下面參數(shù)按照截圖填到對應(yīng)的位置
通訊密鑰: 763WXRBW3PFTC3IXPFWH登錄器端口: 7600網(wǎng)關(guān)端口:881GM賬戶: gm_userGM密碼: gm_pass登陸器版本:20180307如果沒有返回錯誤信息就代表連接網(wǎng)關(guān)成功,接下來就是生成啟動器。
點(diǎn)到第一頁,把版本號、IP 地址、密鑰等參數(shù)填到對應(yīng)的地方,點(diǎn)擊增加,再點(diǎn)擊生成,然后程序就會幫你生成一個獨(dú)一無二的登陸器,把登陸器復(fù)制到 DNF 臺服客戶端的根目錄。

同上
再點(diǎn)擊最后一頁,依次“獲取當(dāng)前密碼→生成隨機(jī)密碼→應(yīng)用當(dāng)前密碼”,再點(diǎn)擊打開文件,把解壓文件里面的 Script.pvf 文件選上,然后點(diǎn)擊應(yīng)用,得到一個新的 Script.pvf 文件,把這個文件放回 DNF 臺服客戶端內(nèi)即可。

依次點(diǎn)擊按鍵,生成 PVF
打開客戶端目錄中的統(tǒng)一啟動器,如果沒有報錯,證明正常連上服務(wù)器,點(diǎn)擊右下的賬號注冊,信息隨便填,賬號和密碼記住就好。

登陸器主界面

注冊賬號
輸入剛創(chuàng)建的賬號和密碼稍等片刻就可以看到耳熟能詳?shù)牡艟€ BGM 了

熟悉的界面

創(chuàng)建角色

正常游玩
容器默認(rèn)會隨著系統(tǒng)開啟而打開,如果容器進(jìn)程被殺或者啟動失敗,可以用下面的命令:
docker stop dnf #關(guān)掉 DNF 容器docker start dnf #打開 DNF 容器docker restart dnf #重啟 DNF 容器至此,Docker 搭建 DNF 臺服是成功了, 感謝鏡像作者提供了另一種搭建方法,擺脫了 CentOS 系統(tǒng)的束縛,其他 Linux 系統(tǒng)也可以用 Docker 靈活搭建。容器還有其他可自定義選項,更加詳細(xì)的文檔請訪問作者的 Github 中查看,有搭建方面的問題也可以留言或者去作者的群里面詢問一下。
總的來說 Docker 對比虛擬機(jī)搭建還是有著不少優(yōu)勢的,Docker 不怎么挑系統(tǒng),對硬件的使用率也要高于虛擬機(jī)。而且就向開頭所說,如果你用的群暉、威聯(lián)通等帶 Docker UI 的 NAS 系統(tǒng),搭一個這樣的私服也非常簡單方便。如果服務(wù)器、NAS 這些你都沒有,那你還能用 WIN10 自帶的 WSL 子系統(tǒng)搭建,反正路子很廣,多花一點(diǎn)點(diǎn)時間學(xué)習(xí),不比去淘寶花錢買一個好?

最后希望大家都能搭建成功,復(fù)興阿拉德大陸的重任就交給你們了。
本文經(jīng)“什么值得買”社區(qū)作者@Hikarunara授權(quán)轉(zhuǎn)載,文章內(nèi)容僅代表作者觀點(diǎn),與本站立場無關(guān),未經(jīng)授權(quán)請勿轉(zhuǎn)載。

掃描二維碼推送至手機(jī)訪問。
版權(quán)聲明:本文由財神資訊-領(lǐng)先的體育資訊互動媒體轉(zhuǎn)載發(fā)布,如需刪除請聯(lián)系。