第一步:安装并使用docker

1.1 运行以下3条命令,按提示选择yes即可

  1. apt update # 更新软件仓库的目录
  2. apt install docker.io # 安装docker
  3. docker --version # 查看docker的版本信息,用于验证docker安装成功

1.2 上传镜像文件到服务器的/mnt/data目录下,上传完成后,在服务器查看

  1. cd /mnt/data
  2. ls # 查看当前目录下有哪些文件和子目录

1.3 制作镜像

注:该笔记旨在搭建单细胞分析环境,在【生信技能树】提供的单细胞分析镜像上进行修改并打包制成

  1. # 由于R包安装时所需依赖较多,且部分不能直接下载,故使用Dockerfile会出现一些问题,调试非常费时间,所以使用commit命令
  2. # 首先根据提供的镜像进入容器,此处使用kinesin镜像
  3. docker run --rm -p 82:8787 -u 0 --name kong \
  4. -v /mnt/rnaseq/project:/home/rstudio/project \
  5. -v /mnt/rnaseq/database:/home/rstudio/database \
  6. -e PASSWORD=654321 rnaseq:v2.0
  7. docker run --rm -p 82:8787 -u 0 --name kong \
  8. -v D:\codes\rnaseq\project:/home/rstudio/project \
  9. -v D:\codes\rnaseq\database:/home/rstudio/database \
  10. -e PASSWORD=654321 rnaseq:v2.0
  11. docker run --rm -p 82:8787 -u 0 --name kong
  12. # 进去后根据自己的需要进行安装新的R包,然后做新的镜像
  13. docker commit 712fd2646407 rnaseq:v2.0
  14. # 前面是容器ID,后面是新镜像的名称和自己设置的版本号
  15. # 完成后查看一下镜像
  16. docker images
  17. # 保存镜像到本地,后面就可以导入这个镜像然后继续分析
  18. docker save rnaseq:v2.0 | gzip -c > rnaseq2.0.tar.gz
  19. # save后面是新镜像名字,然后压缩,后续就可以使用了
  20. docker run -d --rm rnaseq:v2.0

1.4 将压缩的镜像文件解压到系统中

  1. docker load -i /mnt/data/scrna1.2.tar.gz # 解压定制好的镜像文件,用作容器的基础
  2. docker images # 查看是否解压成功

1.5 成功解压后,就可以运行此镜像,得到Rstudio server的单细胞分析环境

  1. cd /mnt/data #确保当前路径在/mnt/data
  2. mkdir -m 777 project database #创建两个连通docker容器的文件夹
  3. # 下面4行要整体复制过去执行
  4. docker run -d --rm -p 82:8787 -u 0 --name geneteam \
  5. -v /mnt/data/project:/home/rstudio/project \
  6. -v /mnt/data/database:/home/rstudio/database \
  7. -e PASSWORD=654321 scrnaimage:v1
  8. docker run -d --rm -p 80:8787 -u 0 --name geneteam \
  9. -v /media/geneteam/home/docker_r/project:/home/rstudio/project \
  10. -v /media/geneteam/home/docker_r/database:/home/rstudio/database \
  11. -e PASSWORD=654321 scrnaimage:v1.1
  12. # 命令说明
  13. # -p 80:8787 指定服务器Linux的80端口与docker容器的8787端口连通
  14. # -v /mnt/data/project:/home/rstudio/project 指定linux系统的目录与docker容器内的目录连通
  15. # 冒号前面是服务器的,后面是docker容器的
  16. # 密码自己设,后面的版本对应好

1.6 docker镜像启动后,可以看到一长串字符,也可以通过命令查看

  1. docker ps # 查看启动中的镜像

1.7 使用docker中的rstudio

浏览器输入云服务器的IP地址并加上冒号和端口号80,用户名只能是rstudio,密码是前面设置的123456