×

把你的shiny網(wǎng)頁工具部署在云服務(wù)器

分類:云服務(wù)資訊 編輯:互聯(lián)網(wǎng)觀察 瀏覽量:625
2020-07-20 13:33:06
之前我在生信菜鳥團(tuán)已經(jīng)發(fā)布的:購買入門級服務(wù)器免費(fèi)送Linux直播培訓(xùn)服務(wù) ,提到了可以每個(gè)月花幾塊錢購置一款《1核2G服務(wù)器》標(biāo)準(zhǔn)品,既可以練習(xí)Linux命令,也可以打搭建一個(gè)博客:五分鐘搞定你的個(gè)人博客,還可以做圖床,或者隧道。然后浙大博士發(fā)掘了這個(gè)《1核2G服務(wù)器》的另外一個(gè)用途,分享給大家。以下是投稿緣由我們課題組有一份油菜的核心種質(zhì)資源,前幾年經(jīng)重測序之后已經(jīng)發(fā)表了。但是課題組后面很多的項(xiàng)目都基于這份核心種質(zhì)資源,實(shí)驗(yàn)室成員常常需要檢索分析某些基因的特定SNP,所以我在自學(xué)了一段時(shí)間的Shiny之后就嘗試著搭建了一個(gè)Shiny app并利用Shiny-server部署在課題組的服務(wù)器上,但是由于我開發(fā)的這個(gè)Shiny app本來就打開比較慢,加上很多時(shí)候服務(wù)器負(fù)荷運(yùn)行,導(dǎo)致Shiny app打開速度就更慢了,有的時(shí)候甚至加載時(shí)間過長直接打不開。恰巧我緊跟生信技能樹推文更新,了解到可以搞個(gè)云服務(wù)器來部署Shiny應(yīng)用。購買服務(wù)器一開始@思考問題的熊建議我利用RStudio的Shinyapp.io部署Shiny應(yīng)用,看名字就知道這是RStudio專門開發(fā)的用于部署Shiny應(yīng)用的一個(gè)服務(wù)器,有免費(fèi)版也有企業(yè)版的,對于我來說免費(fèi)版的就足夠了,具體使用可以參考官方手冊,我這里不講,因?yàn)槲业膽?yīng)用無法部署上去,我使用到的一個(gè)包genetics顯示來源有問題,不兼容。具體就是這個(gè)包我是從CRAN安裝的,但是利用rsconnect檢測的時(shí)候顯示genetics的來源是BioConductor,這就很尷尬了,Google發(fā)現(xiàn)很多用戶都遇到個(gè)類似的問題,有的解決辦法是從GitHub上安裝繞過了這個(gè)問題,genetics好像不能通過GitHub安裝,所以沒辦法只能棄之,自己購買一個(gè)云服務(wù)器進(jìn)行部署。服務(wù)器產(chǎn)商很多,國外的AWS我也嘗試注冊過,它提供為期一年的免費(fèi)試用,但是注冊激活的時(shí)候需要填信用卡信息,我沒有,只能放棄,轉(zhuǎn)向國內(nèi)的云服務(wù)器。國內(nèi)的服務(wù)器主要有阿里云aliyun、騰訊云Tencent Cloud以及華為云HUAWEI CLOUD等,生信技能樹也專門寫了推文介紹,有需要的朋友關(guān)注生信技能樹看推文哈!我最后選了阿里云,先進(jìn)入阿里云,注冊登錄,然后學(xué)生認(rèn)證。我直接購買了一年的學(xué)生套餐,瞄了一眼,發(fā)現(xiàn)還能領(lǐng)個(gè)20元的優(yōu)惠券:最后94元就買一年的最低配(1核2G,1M帶框,40G云盤)的服務(wù)器,我主要是用來部署服務(wù)器,所以容易足夠了。地域選擇的話我選了華東(杭州),我不記得在哪看了篇博客,里面測試發(fā)現(xiàn)不同區(qū)域之間差別不大,所以我也沒糾結(jié),就選了所在城市地域。系統(tǒng)我就選了Ubuntu16.04 64位(好像只有這一個(gè)Ubuntu版本可選)購買之后進(jìn)入控制臺,里面有云服務(wù)器的詳細(xì)信息,對我最有用的話就是有個(gè)公網(wǎng)IP了,這樣我的Shiny app全世界都能訪問了!配置服務(wù)器有了云服務(wù)器就能各種折騰了,我已經(jīng)折騰過好幾臺服務(wù)器了,所以比較順利就安裝配置好了部署環(huán)境,新手的話參考生信技能樹的帖子:如果有一個(gè)新的服務(wù)器你會做什么?,基本能順利地走通。我這里就只講一下安裝Shiny-server,默認(rèn)你已經(jīng)安裝了R語言以及Shiny包:首先進(jìn)入官網(wǎng)下載,里面有詳細(xì)的安裝方法:sudo apt-get install gdebi-corewget https://download3.rstudio.org/ubuntu-14.04/x86_64/shiny-server-1.5.14.948-amd64.debsudo gdebi shiny-server-1.5.14.948-amd64.deb安裝好之后,會自動(dòng)創(chuàng)建shiny用戶。需要注意的是,你購買的云服務(wù)器你進(jìn)去之后實(shí)際上是root用戶登錄的,我一開始部署的時(shí)候由于安裝的包都是root用戶安裝的,所以就修改了配置問題,用root用戶運(yùn)行Shiny-server,開始的時(shí)候運(yùn)行正常,后面突然莫名其妙就運(yùn)行不了,所以我最后不得不將所有R包都刪了,然后以shiny用戶登錄。shiny用戶登錄好之后,我先進(jìn)行了一下設(shè)置,主要是R語言以及shiny-server設(shè)置:# vi .RprofileSys.setenv(LANG="en_US.UTF-8")options=(repo = c(CRAN = "https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))options(BioC_mirror="https://mirrors.tuna.tsinghua.edu.cn/bioconductor")# vi .RenvironR_LIBS=/home/shiny/R_Library然后shiny-server配置文件如下:# Instruct Shiny Server to run applications as the user "shiny"preserve_logs true;sanitize_errors false;run_as shiny;# Define a server that listens on port 3838server { listen 3838; # Define a location at the base URL location / { # Host the directory of Shiny Apps stored in this directory site_dir /srv/shiny-server; # Log all Shiny output to files in this directory log_dir /var/log/shiny-server; # When a user visits the base URL rather than a particular application, # an index of the applications available in this directory will be shown. directory_index on; }}然后就是安裝各種需要用到的R包了,這里不講,網(wǎng)上教程太多了,ubuntu學(xué)徒安裝R包失敗可以肯定的是遇到各種依賴缺失的問題,這個(gè)時(shí)候就Google或者百度了,缺啥補(bǔ)啥!需要注意的是,由于我購買的是最低配的服務(wù)器,所以有些需要編譯的R包有時(shí)候會由于內(nèi)存不足,編譯安裝失敗,這個(gè)時(shí)候我的建議是多安裝幾次,總會成功的!所有準(zhǔn)備環(huán)境準(zhǔn)備好了之后,就可以將Shiny app文件上傳到/srv/shiny-server目錄里面,可能需要修改目錄所屬權(quán)限:sudo chown -R shiny:shiny shiny-server剩下就差最后最后一步了,云服務(wù)器多了個(gè)安全組,需要進(jìn)入控制臺進(jìn)行設(shè)置:(左邊側(cè)欄)網(wǎng)絡(luò)與安全-安全組,進(jìn)入之后手動(dòng)添加開通3838端口就行了。此時(shí)瀏覽器打開 http://公網(wǎng)ip:3838/app名 就可以看到自己部署的應(yīng)用了!我這次部署了兩個(gè)應(yīng)用 http://121.41.229.126:3838/bnasnpdb 和 http://121.41.229.126:3838/gwas ,目前運(yùn)行良好,打開速度也還行!以上是我這次云服務(wù)器部署shiny app的經(jīng)驗(yàn),由于一開始沒打算記錄下來,現(xiàn)在信息大爆炸時(shí)代,技術(shù)分享實(shí)在太多了,但是@jimmy說每個(gè)人的故事都不一樣,所以我就事后回憶記錄一下,如果能幫助到其他人就最好了!限于本人能力,里面肯定有很多不足的地方。文末友情推薦要想真正入門生物信息學(xué)建議務(wù)必購買全套書籍,一點(diǎn)一滴攻克計(jì)算機(jī)基礎(chǔ)知識,書單在:什么,生信入門全套書籍僅需160 。如果大家沒有時(shí)間自行慢慢摸索著學(xué)習(xí),可以考慮我們生信技能樹官方舉辦的學(xué)習(xí)班:數(shù)據(jù)挖掘?qū)W習(xí)班第5期(線上直播3周,馬拉松式陪伴,帶你入門),原價(jià)4800的數(shù)據(jù)挖掘全套課程, 疫情期間半價(jià)即可搶購。生信爆款入門-第7期(線上直播4周,馬拉松式陪伴,帶你入門),原價(jià)9600的生信入門全套課程,疫情期間3.3折即可搶購。如果你課題涉及到轉(zhuǎn)錄組,歡迎添加一對一客服:詳見:你還在花三五萬做一個(gè)單細(xì)胞轉(zhuǎn)錄組嗎?

聲明:免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)

送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)

需注明出處:新網(wǎng)idc知識百科

免費(fèi)咨詢獲取折扣

Loading