中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

轉錄組RNA-Seq如何使用docker+bioconda搭建分析環境

發布時間:2021-11-12 10:16:59 來源:億速云 閱讀:134 作者:小新 欄目:云計算

小編給大家分享一下轉錄組RNA-Seq如何使用docker+bioconda搭建分析環境,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

基于docker構建環境

筆者使用docker的方式屬于網上不推薦的方式,類似于虛擬機鏡像。原因就是懶得去編寫dockerfile,感覺太麻煩。

極速安裝docker極速安裝docker-compose

#從以下網址下載docker-compose,將docker-compose文件放在path變量目錄下如:/usr/local/bin
https://github.com/docker/compose/releases

選擇docker鏡像并構建基礎鏡像

因為之前的Ubuntu16.04過于老舊,這里直接選擇Ubuntu20.04的鏡像

#拉取ubuntu20.04鏡像
docker pull ubuntu:20.04

#獲取docker鏡像列表
docker images 或者 docker image ls

#確認docker鏡像拉取完成之后,使用該鏡像創建一個docker容器
docker run --name first -it ubuntu:20.04 /bin/bash

#運行完成之后進入容器中
root@80cb4d36be59#

#安裝ssh等軟件
root@80cb4d36be59# apt update && apt install openssh-server vim net-tools curl

#安裝完成之后修改ssh配置文件,便于遠程登錄
root@80cb4d36be59# vim /etc/ssh/sshd_config

#修改如下幾行并保存
Port 9020  #修改默認端口號(可選)
ListenAddress 0.0.0.0  #默認監聽地址,所有地址
LoginGraceTime 2m      #允許用戶登錄耗時(可選)
PermitRootLogin yes    #允許root用戶登錄,docker默認用戶是root用戶

#修改默認root賬戶密碼,便于ssh遠程登錄
root@80cb4d36be59# passwd root

#啟動ssh服務
root@80cb4d36be59# service ssh start

# 獲取容器ip地址,
root@b8080a125313:/# ifconfig
eth0: flags=4163<up,broadcast,running,multicast>  mtu 1500
        inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:ac:11:00:02  txqueuelen 0  (Ethernet)
        RX packets 27095  bytes 55050990 (55.0 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 26785  bytes 2478368 (2.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<up,loopback,running>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

#打開一個新的終端測試下連接
ssh root@172.17.0.2 -p9020

#如果可以連接上則第一步構建完成,我們commit創建自己的鏡像,打開終端
docker commit first ubuntu20.04-ssh:1.00

第二階段:安裝bioconda構建基礎生信鏡像

  • 退出并刪除之前運行的容器

    #退出之前的容器
    root@80cb4d36be59# exit
    #刪除該容器
    docker rm first


  • 編寫docker-compose.yml文件,并使用docker-compose啟動容器

    version: "3"
    services:
      RNASeq:
        image: ubuntu20.04-ssh:1.00 #此處為我們之前提交的鏡像名稱
        container_name: rnaseq #運行容器名稱
        volumes:
          - /media/sliver/Element1/data:/opt/data:rw  #外掛data目錄,放置原始數據
          - /media/sliver/Manufacture/RNA-Seq/root:/root:rw #外掛root目錄,bioconda安裝位置,減小鏡像體積
          - /media/sliver/Manufacture/RNA-Seq/ref:/opt/ref:rw #外掛reference目錄
          - /media/sliver/Manufacture/RNA-Seq/result:/opt/result:rw #分析結果輸出及中間文件目錄
        ports:
          - "9020:9020"
        network_mode: "host" #此處直接使用host模式,默認為bridge模式都可以,host模式注意不能與服務器端口沖突
        environment:
          - TZ="Asia/Shanghai" #通過變量設置時區,否則系統時間錯誤
        command: service ssh start -D  #啟動容器時啟動ssh服務便于遠程連接


  • 使用docker-compose.yml文件啟動容器

    docker-compose.yml文件目錄下運行docker-compose up啟動容器
    并查看輸出日志,看是否存在錯誤


  • 使用ssh登錄鏡像,并安裝bioconda

    #這里使用127.0.0.1地址登錄,每次容器重新運行ip地址172網段的會發生變動
    ssh root@127.0.0.1 -p9020
    
    #登錄成功,安裝bioconda
    curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
    sh Miniconda3-latest-Linux-x86_64.sh
    
    #setup channels
    conda config --add channels defaults
    conda config --add channels bioconda
    conda config --add channels conda-forge


    #直接修改配置文件,添加清華源 vim ~/.condarc
    channels:
      - conda-forge
      - bioconda
      - defaults
    show_channel_urls: true
    default_channels:
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
    custom_channels:
      conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud


    # 使配置文件生效
    source ~/.bashrc
    
    #安裝幾個軟件測試下
    conda install fastqc
    conda install multiqc
    conda install STAR
    conda install hisat2


  • 構建bioconda 第二階段鏡像

    #測試沒有問題,打開一個新的終端提交鏡像,第二階段鏡像后續可以用于各種生信環境
    docker commit rnaseq ubuntu20.04-bioconda


第三階段,安裝R、Bioconductor和RStudio-Server,構建用于RNA-Seq(轉錄組)的鏡像

  • 安裝R及Bioconductor

    #切換回剛才的容器內shell終端,安裝R
    apt install r-base
    
    #安裝完成之后查看版本
    R --version
    #得到輸出如下:
    R version 3.6.3 (2020-02-29) -- "Holding the Windsock"
    Copyright (C) 2020 The R Foundation for Statistical Computing
    Platform: x86_64-pc-linux-gnu (64-bit)
    
    R is free software and comes with ABSOLUTELY NO WARRANTY.
    You are welcome to redistribute it under the terms of the
    GNU General Public License versions 2 or 3.
    For more information about these matters see
    https://www.gnu.org/licenses/.
    
    #安裝Bioconductor,終端中運行
    R
    #R環境提示符運行
    if (!requireNamespace("BiocManager", quietly = TRUE))
        install.packages("BiocManager")
    BiocManager::install()
    
    #安裝完成之后我們測試下,安裝兩個R包
    BiocManager::install('edgeR')
    BiocManager::install("DESeq2")


  • 安裝RStudio Server,為了遠程部署和運行R

    #安裝RStudio Server
    apt-get install gdebi-core
    wget https://download2.rstudio.org/server/bionic/amd64/rstudio-server-1.3.1093-amd64.deb
    gdebi rstudio-server-1.3.1093-amd64.deb
    
    #創建配置文件
    vi /etc/rstudio/rserver.conf
    #添加如下語句
    ###在兩個配置文件中添加以下語句
    ##系統的R程序所在位置,如果個人目錄下有利用anaconda安裝R,可能會報錯
    rsession-which-r=/usr/bin/R  
    www-port=8787 ### 通過ip的8787端口連接
    
    
    vi /etc/rstudio/rsession.conf
    #添加如下語句
    www-port=8787 ### 通過ip的8787端口連接
    
    #添加用戶sliver,用于登錄RStudio Server
    useradd sliver
    passwd  sliver
    
    #創建該用戶home目錄,否則登錄成功,但是會報錯 Unable to connect to service
    mkdir /home/sliver
    chown -R sliver /home/sliver
    
    #檢查Rstudio-server是否能夠運行并啟動服務啟動
    rstudio-server verify-installation
    rstudio-server start


  • 打開瀏覽器輸入:http://127.0.0.1:8787

    <img src="https://cache.yisu.com/upload/information/20210522/355/550318.png" >

  • 使用之前創建的用戶sliver及密碼登錄:

    <img src="https://cache.yisu.com/upload/information/20210522/355/550321.png" >

  • 說明配置成功。

提交鏡像,并修改docker-compose.yml文件
  • 提交鏡像,用于RNA-Seq轉錄組分析

    #打開一個新的終端運行
    docker commit rnaseq ubuntu20.04-rnaseq:1.00
    
    #將當前容器導出為文件
    docker export -o ubuntu_20.04_rnaseq.tar rnaseq
    
    #遷移鏡像可以從文件導入至鏡像
    docker import ubuntu_20.04_rnaseq.tar ubuntu20.04-rnaseq:1.00


  • 修改docker-compose.yml文件

    version: "3"
    services:
      RNASeq:
        image: ubuntu20.04-rnaseq:1.00
        container_name: rnaseq
        volumes:
          - /media/sliver/Element1/data:/opt/data:rw #掛載數據目錄
          - /media/sliver/Manufacture/RNA-Seq/root:/root:rw #掛載root目錄
          - /media/sliver/Manufacture/RNA-Seq/ref:/opt/ref:rw #掛載reference目錄
          - /media/sliver/Manufacture/RNA-Seq/result:/opt/result:rw #掛載中間文件和結果目錄
        ports:
          - "9020:9020"  # ssh連接端口
          - "8787:8787"  # RStudio Server Web訪問端口
        network_mode: "host" #網絡模式為host,注意端口與服務器端口不能沖突
        environment:
          - TZ="Asia/Shanghai" #設置時區,方式時間不對
        command: /bin/bash -c "rstudio-server start &amp;&amp; service ssh start -D" #同時啟動兩個服務


以上是“轉錄組RNA-Seq如何使用docker+bioconda搭建分析環境”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

佛教| 荆门市| 江孜县| 南平市| 和林格尔县| 天门市| 肥乡县| 赤城县| 大庆市| 道真| 东兴市| 项城市| 鱼台县| 元氏县| 台东市| 北碚区| 双鸭山市| 宁晋县| 博罗县| 铁岭市| 汉寿县| 奇台县| 盱眙县| 新津县| 塔城市| 孝义市| 长寿区| 边坝县| 柯坪县| 金坛市| 利川市| 成都市| 隆昌县| 济宁市| 荆门市| 郓城县| 含山县| 河曲县| 墨江| 礼泉县| 祁阳县|