踐 | 騰訊云輕量應(yīng)用服務(wù)器部署開源WBO白板工具)
新手上云實(shí)踐 | 騰訊云輕量應(yīng)用服務(wù)器部署開源WBO白板工具前言一、WBO介紹二、本次環(huán)境規(guī)劃2.1 本次實(shí)踐簡(jiǎn)介2.2 本次環(huán)境規(guī)劃三、購(gòu)買輕量應(yīng)用服務(wù)器3.1 騰訊云輕量應(yīng)用服務(wù)器3.2 購(gòu)買輕量應(yīng)用服務(wù)器3.3 檢查輕量應(yīng)用服務(wù)器狀態(tài)四、切換應(yīng)用模版4.1 本次實(shí)踐應(yīng)用模版介紹4.2 切換Node.js應(yīng)用模版4.3 登錄輕量應(yīng)用服務(wù)器4.4 檢查云服務(wù)器環(huán)境五、部署WBO應(yīng)用5.1 下載WBO項(xiàng)目5.2 查看項(xiàng)目?jī)?nèi)容5.3 設(shè)置npm鏡像源(可選5.4 安裝依賴5.5 啟動(dòng)WBO服務(wù)5.6 設(shè)置環(huán)境變量5.7 設(shè)置service服務(wù)5.8 本機(jī)測(cè)試WBO服務(wù)六、安全設(shè)置工作6.1 本機(jī)防火墻設(shè)置工作6.2 云服務(wù)器防火墻設(shè)置工作七、訪問WBO在線協(xié)作白板7.1 訪問WBO首頁(yè)7.2 創(chuàng)建私人白板7.3 在線協(xié)作八、總結(jié)前言在數(shù)字化協(xié)作需求日益增長(zhǎng)的今天騰訊云輕量應(yīng)用服務(wù)器Lighthouse以其出色的性能和易用性成為了部署各類應(yīng)用的優(yōu)選方案。特別是在快速搭建如WBO這樣自由開源的在線協(xié)作白板時(shí)Lighthouse提供的高帶寬流量包和一鍵構(gòu)建應(yīng)用功能極大地簡(jiǎn)化了部署流程。借助LighthouseWBO能夠?yàn)橛脩籼峁┓€(wěn)定流暢的多人實(shí)時(shí)協(xié)作體驗(yàn)無論是創(chuàng)意設(shè)計(jì)還是遠(yuǎn)程教學(xué)都能輕松應(yīng)對(duì)。選擇騰訊云輕量應(yīng)用服務(wù)器開啟高效、便捷的云端協(xié)作之旅。一、WBO介紹WBOwhitebophir簡(jiǎn)介WBOwhitebophir是一個(gè)自由和開源的在線協(xié)作白板旨在為用戶提供一個(gè)靈活、高效的在線協(xié)作空間。它支持多個(gè)用戶同時(shí)在一個(gè)虛擬的大型白板上進(jìn)行繪畫和創(chuàng)作所有操作均實(shí)時(shí)同步至所有在線參與者確保了信息的即時(shí)共享與交流。無論是在藝術(shù)創(chuàng)作、娛樂互動(dòng)、設(shè)計(jì)討論還是教育輔導(dǎo)等領(lǐng)域WBO都能提供強(qiáng)大的支持滿足多樣化的協(xié)作需求。WBO 白板特點(diǎn)實(shí)時(shí)協(xié)作繪圖與他人實(shí)時(shí)協(xié)作繪制圖形變得異常簡(jiǎn)單只需分享白板的URL即可邀請(qǐng)對(duì)方加入。公共白板任何人都可以使用公共白板方便臨時(shí)團(tuán)隊(duì)或公開項(xiàng)目使用。私有白板用戶可以創(chuàng)建帶有隨機(jī)名稱的私有白板確保只有通過特定鏈接才能訪問保護(hù)隱私安全。自定義URL支持創(chuàng)建可命名的私有白板并允許自定義其URL便于記憶和分享同時(shí)也保證了訪問的私密性。二、本次環(huán)境規(guī)劃2.1 本次實(shí)踐簡(jiǎn)介1.本次實(shí)踐為個(gè)人測(cè)試學(xué)習(xí)環(huán)境旨在新手快速上云和部署應(yīng)用生產(chǎn)環(huán)境請(qǐng)謹(jǐn)慎2.本次實(shí)踐在騰訊云輕量應(yīng)用服務(wù)器上部署了開源WBO白板工具。2.2 本次環(huán)境規(guī)劃本次實(shí)踐的環(huán)境規(guī)劃如下云廠商云產(chǎn)品應(yīng)用模板應(yīng)用模板版本操作系統(tǒng)版本部 署項(xiàng)目備注騰訊云輕量應(yīng)用服務(wù)器Node.jsnode.js—v16.14.2Centos 7WBOwhitebophir—三、購(gòu)買輕量應(yīng)用服務(wù)器3.1 騰訊云輕量應(yīng)用服務(wù)器如果您正在尋找一款高性價(jià)比的云服務(wù)器來部署您的應(yīng)用騰訊云輕量應(yīng)用服務(wù)器是一個(gè)不錯(cuò)的選擇。它開箱即用非常適合個(gè)人開發(fā)者和初創(chuàng)團(tuán)隊(duì)。目前騰訊云官方正在舉辦特惠活動(dòng)云服務(wù)器等爆款產(chǎn)品搶先購(gòu)是上云的好時(shí)機(jī)??梢渣c(diǎn)擊下方鏈接立即前往活動(dòng)頁(yè)面了解詳情并參與購(gòu)買立即前往騰訊云特惠活動(dòng)【騰訊云】云服務(wù)器、云數(shù)據(jù)庫(kù)、COS、CDN、短信等云產(chǎn)品特惠熱賣中立即參與活動(dòng)? 抓住機(jī)會(huì)享受更多優(yōu)惠3.2 購(gòu)買輕量應(yīng)用服務(wù)器登錄騰訊云賬號(hào)在輕量應(yīng)用服務(wù)器產(chǎn)品介紹頁(yè)中點(diǎn)擊“立即選購(gòu)”進(jìn)入到輕量應(yīng)用服務(wù)器購(gòu)買頁(yè)面。購(gòu)買流程應(yīng)用創(chuàng)建方式使用應(yīng)用模版 應(yīng)用模版選擇Docker CE也可以根據(jù)自身需要選擇不同的應(yīng)用模版地域默認(rèn)即可 套餐規(guī)格根據(jù)需要選擇規(guī)格的套餐登錄憑證自定義密碼自行設(shè)置密碼其余配置默認(rèn)確認(rèn)所有配置項(xiàng)無誤后點(diǎn)擊購(gòu)買即可。3.3 檢查輕量應(yīng)用服務(wù)器狀態(tài)購(gòu)買成功后在云服務(wù)器控制臺(tái)看到購(gòu)買的輕量應(yīng)用服務(wù)器實(shí)例當(dāng)看到狀態(tài)為“運(yùn)行中”時(shí)候輕量應(yīng)用服務(wù)器運(yùn)行正常。如下圖所示這是我提前購(gòu)買好的兩臺(tái)輕量應(yīng)用服務(wù)器本次實(shí)踐以Docker-APP實(shí)例為操作環(huán)境。四、切換應(yīng)用模版4.1 本次實(shí)踐應(yīng)用模版介紹使用應(yīng)用模板服務(wù)器創(chuàng)建后基于模板自動(dòng)構(gòu)建應(yīng)用實(shí)現(xiàn)開箱即用簡(jiǎn)單便捷。適合快速構(gòu)建應(yīng)用的用戶尤其是需要迅速啟動(dòng)項(xiàng)目的開發(fā)者和團(tuán)隊(duì)。一鍵使用Node.js應(yīng)用模板大幅節(jié)省開發(fā)環(huán)境部署時(shí)間避免繁瑣的配置過程提升開發(fā)效率。4.2 切換Node.js應(yīng)用模版在購(gòu)買騰訊云輕量應(yīng)用服務(wù)器后如果我們要切換系統(tǒng)可以選擇云服務(wù)器的“重裝系統(tǒng)”功能。如下圖所示點(diǎn)擊“重裝系統(tǒng)選項(xiàng)”進(jìn)入系統(tǒng)重置配置頁(yè)面。在系統(tǒng)重置配置頁(yè)面我們選擇使用應(yīng)用模版——Node.js設(shè)置登錄密碼確認(rèn)即可。等待實(shí)例狀態(tài)正常運(yùn)行后我們看此時(shí)輕量應(yīng)用服務(wù)器的鏡像為Node.js應(yīng)用信息為預(yù)裝Node.js和Nginx。4.3 登錄輕量應(yīng)用服務(wù)器我們可以使用Cloud Shell登錄輕量應(yīng)用服務(wù)器點(diǎn)擊“登錄”選項(xiàng)。騰訊云輕量應(yīng)用服務(wù)器的cloud shell遠(yuǎn)程登錄功能默認(rèn)開啟一鍵免密登錄到服務(wù)器 可以直接連接到云服務(wù)器也可以手動(dòng)關(guān)閉。使用Xshell方式連接本地打開Xshell工具輸入彈性公網(wǎng)IP地址登錄賬號(hào)和密碼即可連接騰訊CVM云服務(wù)器。4.4 檢查云服務(wù)器環(huán)境檢查操作系統(tǒng)版本當(dāng)前操作系統(tǒng)版本為CentOS 7。[rootVM-8-13-centos ~]# cat /etc/os-releaseNAMECentOS LinuxVERSION7 (Core)IDcentosID_LIKErhel fedoraVERSION_ID7PRETTY_NAMECentOS Linux 7 (Core)ANSI_COLOR0;31CPE_NAMEcpe:/o:centos:centos:7HOME_URLhttps://www.centos.org/BUG_REPORT_URLhttps://bugs.centos.org/CENTOS_MANTISBT_PROJECTCentOS-7CENTOS_MANTISBT_PROJECT_VERSION7REDHAT_SUPPORT_PRODUCTcentosREDHAT_SUPPORT_PRODUCT_VERSION7檢查內(nèi)核版本當(dāng)前內(nèi)核版本為3.10.0-1160.108.1.el7.x86_64。[rootVM-8-13-centos ~]# uname -r3.10.0-1160.62.1.el7.x86_64檢查Node版本當(dāng)前默認(rèn)安裝的版本為v16.14.2。[rootVM-8-13-centos ~]# node -vv16.14.2[rootVM-8-13-centos ~]# npm -v8.5.0五、部署WBO應(yīng)用5.1 下載WBO項(xiàng)目執(zhí)行以下命令在Github下載whitebophir源碼包。gitclone https://github.com/lovasoa/whitebophir.git5.2 查看項(xiàng)目?jī)?nèi)容進(jìn)入whitebophir項(xiàng)目目錄[rootVM-8-13-centos ~]# cd whitebophir/[rootVM-8-13-centos whitebophir]#查看whitebophir項(xiàng)目?jī)?nèi)容[rootVM-8-13-centos whitebophir]# tree -L 2 ././ ├── AUTHORS ├── CHECKS ├── client-data │ ├── apple-touch-icon.png │ ├── apple-touch-icon-precomposed.png │ ├── background.png │ ├── board.css │ ├── board.html │ ├── crossdomain.xml │ ├── error.html │ ├── favicon.ico │ ├── favicon.svg │ ├── frontpage-illustration.svg │ ├── github.svg │ ├── icon-size.svg │ ├── index.css │ ├── index.html │ ├── instagram.svg │ ├── js │ ├── label.svg │ ├── manifest.json │ └── tools ├── docker-compose.yml ├── Dockerfile ├── LICENSE ├── nightwatch.conf.js ├── package.json ├── package-lock.json ├── README.md ├── server │ ├── boardData.js │ ├── check_output_directory.js │ ├── client_configuration.js │ ├── configuration.js │ ├── createSVG.js │ ├── fs_promises.js │ ├── jwtauth.js │ ├── jwtBoardnameAuth.js │ ├── log.js │ ├── server.js │ ├── sockets.js │ ├── templating.js │ └── translations.json ├── server-data └── tests └── integration.js6directories,40files5.3 設(shè)置npm鏡像源(可選如果云服務(wù)器區(qū)域在國(guó)內(nèi)地區(qū)為了加速下載速度可以將npm設(shè)置為國(guó)內(nèi)淘寶最新的鏡像源。npmconfigsetregistry https://registry.npmmirror.com5.4 安裝依賴執(zhí)行以下命令安裝whitebophir項(xiàng)目的相關(guān)依賴。npminstall--production5.5 啟動(dòng)WBO服務(wù)執(zhí)行以下命令啟動(dòng)whitebophir服務(wù)。直接啟動(dòng)WBO服務(wù)PORT5001HOST0.0.0.0npmstart后臺(tái)啟動(dòng)WBO服務(wù)PORT5001HOST0.0.0.0nohupnpmstartwbo.log215.6 設(shè)置環(huán)境變量鏈接二進(jìn)制文件ln-s/usr/local/lighthouse/softwares/nodejs/node/bin/node /usr/local/bin/nodeln-s/usr/local/lighthouse/softwares/nodejs/node/bin/npm /usr/local/bin/npm配置環(huán)境變量:在/etc/profile文件中新增以下兩行。vim/etc/profileexportNODE_HOME/usr/local/lighthouse/softwares/nodejs/node/bin/exportPATH$PATH:$NODE_HOME:/usr/local/bin/使變量生效source/etc/profile5.7 設(shè)置service服務(wù)為了確保 WBO 白板服務(wù)能夠在系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行并且可以通過 systemctl 進(jìn)行方便的管理可以將其配置為一個(gè)系統(tǒng)服務(wù)。vim/etc/systemd/system/wbo.service[Unit]DescriptionWBO Online Collaboration WhiteboardAfternetwork.target[Service]TypesimpleEnvironmentPORT5001HOST0.0.0.0NODE_ENVproductionExecStart/usr/local/bin/npm startExecReload/usr/local/bin/npm restartExecStop/usr/local/bin/npm stopWorkingDirectory/root/whitebophir/RestartalwaysUserrootGrouprootStandardOutputappend:/root/whitebophir/wbo.logStandardErrorappend:/root/whitebophir/wbo.log[Install]WantedBymulti-user.target執(zhí)行以下命令啟動(dòng)wbo服務(wù)。systemctl daemon-reload systemctl start wbosystemctlenablewbo重啟服務(wù)器后查看wbo服務(wù)狀態(tài)。[rootVM-8-13-centos ~]# systemctl status wbo● wbo.service - WBO Online Collaboration Whiteboard Loaded: loaded(/etc/systemd/system/wbo.service;enabled;vendor preset: disabled)Active: active(running)since Sat2024-11-1618:04:44 CST;12min ago Main PID:1034(npm start)CGroup: /system.slice/wbo.service ├─1034npmstart └─1464node./server/server.js Nov1618:04:44 VM-8-13-centos systemd[1]: Started WBO Online Collaboration Whiteboard. Nov1618:04:45 VM-8-13-centos npm[1034]:whitebophir1.21.2 start Nov1618:04:45 VM-8-13-centos npm[1034]:node./server/server.js Nov1618:04:46 VM-8-13-centos npm[1034]: server started{port:5001}5.8 本機(jī)測(cè)試WBO服務(wù)在云服務(wù)器本機(jī)上訪問在http://127.0.0.1:5001有wbo網(wǎng)頁(yè)內(nèi)容返回則部署成功。[rootVM-8-13-centos ~]# curl http://127.0.0.1:5001 |head% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed1007239100723900350k0--:--:-- --:--:-- --:--:-- 353k!DOCTYPE htmlhtmllangenheadmetacharsetutf-8/titleWBO — Collaborative whiteboard/titlelinkrelstylesheethrefindex.css/metanamedescriptioncontentA free and open-source online collaborative drawing tool. Sketch new ideas together on WBO!/metanamekeywordscontentwhiteboard,collaborative,online,draw,paint,shared,realtime,wbo,whitebophir,open-source,GPL,javascript六、安全設(shè)置工作6.1 本機(jī)防火墻設(shè)置工作輕量應(yīng)用服務(wù)器的Docker CE應(yīng)用模版中默認(rèn)已經(jīng)將系統(tǒng)的防火墻和selinux都關(guān)閉了。如果沒有關(guān)閉可參考以下命令關(guān)閉本地防火墻可執(zhí)行以下命令。systemctl disable firewalldsystemctl stop firewalld關(guān)閉selinux可執(zhí)行以下命令。sed-ris#(SELINUX).*#\1disabled#/etc/selinux/config setenforce06.2 云服務(wù)器防火墻設(shè)置工作在騰訊云輕量應(yīng)用服務(wù)器中需要配置防火墻防火墻所提供的安全防護(hù)作用等同于云服務(wù)器中的安全組不支持為輕量應(yīng)用服務(wù)器配置安全組。我們選擇添加規(guī)則放行5001端口。七、訪問WBO在線協(xié)作白板7.1 訪問WBO首頁(yè)訪問地址http://彈性公網(wǎng)IP地址:5001將IP地址替換為自己服務(wù)器的彈性公網(wǎng)IP地址。我們可以正常訪問到WBO在線協(xié)作白板的首頁(yè)如下所示7.2 創(chuàng)建私人白板創(chuàng)建可命名的私人白板自定義填寫白板名稱點(diǎn)擊“Go”進(jìn)入個(gè)人白板頁(yè)面。7.3 在線協(xié)作進(jìn)入公共白板進(jìn)行繪圖操作。切換到其余電腦的瀏覽器打開公共白板我們可以繼續(xù)編輯該白板內(nèi)容。八、總結(jié)通過在騰訊云輕量應(yīng)用服務(wù)器上部署開源WBO白板工具我們充分體驗(yàn)到了其卓越的性能和簡(jiǎn)便的操作。Lighthouse提供的高帶寬流量包和一鍵構(gòu)建應(yīng)用功能使得整個(gè)部署過程變得異??旖莺晚槙?。WBO白板的實(shí)時(shí)協(xié)作功能在騰訊云的支持下表現(xiàn)得非常穩(wěn)定極大地提升了團(tuán)隊(duì)協(xié)作的效率。無論是藝術(shù)創(chuàng)作、設(shè)計(jì)討論還是遠(yuǎn)程教學(xué)騰訊云輕量應(yīng)用服務(wù)器都展現(xiàn)出了強(qiáng)大的適應(yīng)性和可靠性。選擇騰訊云輕量應(yīng)用服務(wù)器無疑是邁向高效云端協(xié)作的最佳選擇。