拉取docker镜像

方法一

#在docker hub搜索docker命令,例如为:
docker pull pegi3s/spades
#那么singularity则为:
singularity pull spades.sif docker://docker-0.unsee.tech/pegi3s/spades
#docker://docker-0.unsee.tech/固定不变,为docker镜像

方法二

#拉取docker镜像创建sandbox格式容器
# 创建容器时加入参数--fakeroot
singularity build --fakeroot --sandbox molspin docker://centos:7.6.1810

# 通过交互的方式进入容器镜像,修改容器镜像
# 加入参数--fakeroot
singularity shell --fakeroot -w molspin

# 安装依赖
yum install epel-release centos-release-scl -y
yum install devtoolset-7 armadillo-devel -y
source /opt/rh/devtoolset-7/enable
echo "source /opt/rh/devtoolset-7/enable" >> /environment

# 注册并下载MolSpin安装包, 解压后进入
unzip -d molspin molspin-v1.0.120819.zip
cd molspin && make
cp molspin /usr/local/bin/

# 在安装软件完后退出镜像
exit

# 生成sif文件
singularity build --fakeroot molspin.sif molspin/

# 运行镜像,其中example.msd为输入文件
singularity exec molspin.sif molspin -p 2 -a example.msd

更新singularity 里的python

1、进入容器
singularity shell OPERA-MS/ubuntu-18.04.sif
2、下载conda
wget <https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh>
bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda
export PATH=$HOME/miniconda/bin:$PATH
3、创建conda环境
conda create -n py38 python=3.8 -y
4、更新命令
例如原始命令为:
singularity exec OPERA-MS/ubuntu-18.04.sif  /home/liuli/liuli/new/liuli/meta/SPAdes-4.1.0-Linux/bin/spades.py \\
-o hybridSPAdes \\
--meta \\
-1 /home/liuli/liuli/new/liuli/meta/illumiona/L1EHK3003588-LH_meta1.R1.clean.fastq \\
-2 /home/liuli/liuli/new/liuli/meta/illumiona/L1EHK3003588-LH_meta1.R2.clean.fastq \\
--nanopore ./LH_meta1.ont.fq \\
-t 70 -m 900 \\
-k 21,31,41,61,81,101,121
则更改为:
singularity exec OPERA-MS/ubuntu-18.04.sif bash -c "
    source ~/miniconda/bin/activate py38 && \\
    /home/liuli/liuli/new/liuli/meta/SPAdes-4.1.0-Linux/bin/spades.py \\
        -o hybridSPAdes \\
        --meta \\
        -1 /home/liuli/liuli/new/liuli/meta/illumiona/L1EHK3003588-LH_meta1.R1.clean.fastq \\
        -2 /home/liuli/liuli/new/liuli/meta/illumiona/L1EHK3003588-LH_meta1.R2.clean.fastq \\
        --nanopore ./LH_meta1.ont.fq \\
        -t 70 -m 900 \\
        -k 21,31,41,61,81,101,121
"

/