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

本篇內(nèi)容主要講解“怎么把shiny網(wǎng)頁工具部署在云服務(wù)器”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“怎么把shiny網(wǎng)頁工具部署在云服務(wù)器”吧!

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供瀘水網(wǎng)站建設(shè)、瀘水做網(wǎng)站、瀘水網(wǎng)站設(shè)計、瀘水網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、瀘水企業(yè)網(wǎng)站模板建站服務(wù),十多年瀘水做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

緣由

我們課題組有一份油菜的核心種質(zhì)資源,前幾年經(jīng)重測序之后已經(jīng)發(fā)表了。但是課題組后面很多的項目都基于這份核心種質(zhì)資源,實驗室成員常常需要檢索分析某些基因的特定SNP,所以我在自學(xué)了一段時間的Shiny之后就嘗試著搭建了一個Shiny app并利用Shiny-server部署在課題組的服務(wù)器上,但是由于我開發(fā)的這個Shiny app本來就打開比較慢,加上很多時候服務(wù)器負(fù)荷運行,導(dǎo)致Shiny app打開速度就更慢了,有的時候甚至加載時間過長直接打不開。恰巧我緊跟生信技能樹推文更新,了解到可以搞個云服務(wù)器來部署Shiny應(yīng)用。

 

購買服務(wù)器

一開始@思考問題的熊建議我利用RStudioShinyapp.io部署Shiny應(yīng)用,看名字就知道這是RStudio專門開發(fā)的用于部署Shiny應(yīng)用的一個服務(wù)器,有免費版也有企業(yè)版的,對于我來說免費版的就足夠了,具體使用可以參考官方手冊,我這里不講,因為我的應(yīng)用無法部署上去,我使用到的一個包genetics顯示來源有問題,不兼容。具體就是這個包我是從CRAN安裝的,但是利用rsconnect檢測的時候顯示genetics的來源是BioConductor,這就很尷尬了,Google發(fā)現(xiàn)很多用戶都遇到個類似的問題,有的解決辦法是從GitHub上安裝繞過了這個問題,genetics好像不能通過GitHub安裝,所以沒辦法只能棄之,自己購買一個云服務(wù)器進(jìn)行部署。

服務(wù)器產(chǎn)商很多,國外的AWS我也嘗試注冊過,它提供為期一年的免費試用,但是注冊激活的時候需要填信用卡信息,我沒有,只能放棄,轉(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)個20元的優(yōu)惠券:

最后94元就買一年的最低配(1核2G,1M帶框,40G云盤)的服務(wù)器,我主要是用來部署服務(wù)器,所以容易足夠了。地域選擇的話我選了華東(杭州),我不記得在哪看了篇博客,里面測試發(fā)現(xiàn)不同區(qū)域之間差別不大,所以我也沒糾結(jié),就選了所在城市地域。系統(tǒng)我就選了Ubuntu16.04 64位(好像只有這一個Ubuntu版本可選)

購買之后進(jìn)入控制臺,里面有云服務(wù)器的詳細(xì)信息,對我最有用的話就是有個公網(wǎng)IP了,這樣我的Shiny app全世界都能訪問了!

 

配置服務(wù)器

有了云服務(wù)器就能各種折騰了,我已經(jīng)折騰過好幾臺服務(wù)器了,所以比較順利就安裝配置好了部署環(huán)境,新手的話參考生信技能樹的帖子:如果有一個新的服務(wù)器你會做什么?,基本能順利地走通。

我這里就只講一下安裝Shiny-server,默認(rèn)你已經(jīng)安裝了R語言以及Shiny包:

首先進(jìn)入官網(wǎng)下載,里面有詳細(xì)的安裝方法:

sudo apt-get install gdebi-core
wget https://download3.rstudio.org/ubuntu-14.04/x86_64/shiny-server-1.5.14.948-amd64.deb
sudo gdebi shiny-server-1.5.14.948-amd64.deb
 

安裝好之后,會自動創(chuàng)建shiny用戶。

需要注意的是,你購買的云服務(wù)器你進(jìn)去之后實際上是root用戶登錄的,我一開始部署的時候由于安裝的包都是root用戶安裝的,所以就修改了配置問題,用root用戶運行Shiny-server,開始的時候運行正常,后面突然莫名其妙就運行不了,所以我最后不得不將所有R包都刪了,然后以shiny用戶登錄。

shiny用戶登錄好之后,我先進(jìn)行了一下設(shè)置,主要是R語言以及shiny-server設(shè)置:

# vi .Rprofile
Sys.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 .Renviron
R_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 3838
server {
  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包失敗可以肯定的是遇到各種依賴缺失的問題,這個時候就Google或者百度了,缺啥補啥!

需要注意的是,由于我購買的是最低配的服務(wù)器,所以有些需要編譯的R包有時候會由于內(nèi)存不足,編譯安裝失敗,這個時候我的建議是多安裝幾次,總會成功的!

所有準(zhǔn)備環(huán)境準(zhǔn)備好了之后,就可以將Shiny app文件上傳到/srv/shiny-server目錄里面,可能需要修改目錄所屬權(quán)限:

sudo chown -R shiny:shiny shiny-server
 

剩下就差最后最后一步了,云服務(wù)器多了個安全組,需要進(jìn)入控制臺進(jìn)行設(shè)置:(左邊側(cè)欄)網(wǎng)絡(luò)與安全-安全組,進(jìn)入之后手動添加開通3838端口就行了。此時瀏覽器打開 http://公網(wǎng)ip:3838/app名  就可以看到自己部署的應(yīng)用了!我這次部署了兩個應(yīng)用 http://121.41.229.126:3838/bnasnpdb 和 http://121.41.229.126:3838/gwas  ,目前運行良好,打開速度也還行!

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

到此,相信大家對“怎么把shiny網(wǎng)頁工具部署在云服務(wù)器”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

當(dāng)前題目:怎么把shiny網(wǎng)頁工具部署在云服務(wù)器
當(dāng)前URL:http://muchs.cn/article14/ppjede.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站維護(hù)云服務(wù)器、服務(wù)器托管、網(wǎng)站導(dǎo)航、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營