Galaxy Project(https://galaxyproject.org/)是很多年前在云计算背景下诞生的一个生物信息学可视化分析开源项目, 是目前生物医学研究领域最受欢迎的在线生物信息分析工具之一。其源码从 2015 年起从 bitbucket 转移至 GitHub 托管,目前在 GitHub 上有 372 个 star,166 个贡献者。

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

纯服务器下的 Galaxy 安装非常简单,我们今天主要关注的是基于 Docker 下的 Galaxy 安装和部署。

1. 安装 Docker

$ wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

$ sudo yum install /path/to/docker-ce-17.09.0.ce-1.el7.centos.x86_64.rpm

参考:

  • https://docs.docker.com/engine/installation/linux/docker-ce/centos

1.1. Docker 存放路径设置

默认情况下 Docker 的存放位置为 /var/lib/docker, 可以通过下面命令查看具体位置:

$ sudo docker info | grep "Docker Root Dir"

大多数情况下,我们系统盘的空间都比较少,因此需要考虑修改 docker 默认的存储位置,以 CentOS 7 为例,我们修改镜像和容器的 docker 服务文件,使用 -g 参数指定存储位置:

vi /usr/lib/systemd/system/docker.service  
ExecStart=/usr/bin/dockerd --graph /new-path/docker

// reload配置文件
systemctl daemon-reload

// 重启docker
systemctl restart docker.service

更多 docker 默认的存储位置修改,可以参考:《四个修改Docker默认存储位置的方法》

1.2. Docker 免 sudo 使用

sudo 安装 docker 后,当以普通用户身份去使用 docker images 时,出现 permission denied 错误:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix /var/run/docker.sock: connect: permission denied

我们可以通过把当前用户添加到 docker 属组,解决该权限问题:

# 将当前用户加入该 group 内。然后退出并重新登录

sudo gpasswd -a ${USER} docker

# 重启 docker 服务

sudo systemctl restart docker.service

2. 安装 Docker Galaxy

$ docker run -d -p 8080:80 -p 8021:21 -p 8022:22 bgruening/galaxy-stable

命令解释:

  • docker run,用于 Image/Container 执行。如果容器在本地没有安装,docker 会自动下载并安装。

  • -p 8080:80,该命令会把容器内的 80 端口映射到本地 8080 端口。另外的80218022 端口分别对应了用于数据传输的 FTP、SFTP 协议端口。

  • bgruening/galaxy-stable,这是 galaxy 的镜像/容器名称,该名称指向了 galaxy 的 docker index:https://hub.docker.com/r/bgruening/galaxy-stable/

  • -d,表明该命令以守护进程(后台程序)的方式运行该 docker

Docker Galaxy 安装完成,在浏览器打开 “http://您的服务器ip:8080”,即可看到安装成功的界面。

本文分享自微信公众号 - 生信科技爱好者(bioitee)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

可视化生信分析利器 Galaxy 之 Docker 部署的更多相关文章

  1. LJN数理化生信奥队自传

    LJN数理化生信奥队, 原名“LJN信奥队”,简称“ljnoit”. 联系方式: QQ:3046036317 QQ群:555088375 (Offical群) 701124785 (Vip群) 邮箱: ...

  2. linux文本分析利器awk

    转 快速理解linux文本分析利器awk 原文链接 杜亦舒 性能与架构 awk是什么 如果工作中需要操作linux比较多,那么awk是非常值得学习的 awk是一个极其强大的文本分析工具,把文件逐行的读 ...

  3. 给Clouderamanager集群里安装可视化分析利器工具Hue步骤(图文详解)

    扩展博客 以下,是我在手动的CDH版本,安装Hue. CDH版本大数据集群下搭建Hue(hadoop-2.6.0-cdh5.5.4.gz + hue-3.9.0-cdh5.5.4.tar.gz)(博主 ...

  4. 给Ambari集群里安装可视化分析利器工具Hue步骤(图文详解)

    扩展博客 以下,是我在手动的CDH版本平台下,安装Hue. CDH版本大数据集群下搭建Hue(hadoop-2.6.0-cdh5.5.4.gz + hue-3.9.0-cdh5.5.4.tar.gz) ...

  5. 窗口、消息查看分析利器Spy++

    Spy++ —— 窗口.消息查看分析利器 Spy++ —— 窗口.消息查看分析利器 2016年07月15日 00:25:22 阅读数:23170 1,简介   Microsoft Spy++是一个非常 ...

  6. 利用docker部署elk交换机日志分析

    今天我们来聊一下利用docker部署elk日志分析系统,这里解析一下elk是啥东西.elk分别是Elasticsearch,Logstash和Kibana的首字母缩写. Elasticsearch是一 ...

  7. 手把手教你 Docker部署可视化工具Grafana

    一.Grafana的简单介绍 Grafana是开源的.炫酷的可视化监控.分析利器,无论您的数据在哪里,或者它所处的数据库是什么类型,您都可以将它与Grafana精美地结合在一起.它还有丰富的套件供您选 ...

  8. 如何使用Docker部署一个Go Web应用程序

    熟悉Docker如何提升你在构建.测试并部署Go Web应用程序的方式,并且理解如何使用Semaphore来持续部署. 简介 大多数情况下Go应用程序被编译成单个二进制文件,web应用程序则会包括模版 ...

  9. Docker日志管理--docker部署安装ELK (十一)--技术流ken

    Docker logs 对于一个运行的容器,Docker 会将日志发送到 容器的 标准输出设备(STDOUT)和标准错误设备(STDERR),STDOUT 和 STDERR 实际上就是容器的控制台终端 ...

  10. 教你使用docker部署淘宝rap2服务

    什么是rap2 先来说说起因,在上一个星期的分享会上,谈到前后端联调上,有同事提到了rap2,特意去了解了一下,觉得使用这个东西来进行前后端的接口联调来真是太方便了,对比我们之前公司内部开发的API ...

随机推荐

  1. flex弹性盒子中flex-grow与flex的区别

    ​大家在使用flex布局的时候很多情况下都会用到flex-grow这个属性, flex-grow 属性用于设置父元素剩余空间的瓜分比例, flex 属性是 flex-grow.flex-shrink  ...

  2. H5 visibilityChange事件 --- 监听页面的显示或者隐藏 新开一个webview

    mounted() { document.addEventListener('visibilityChange', 事件处理函数) }, destoryed() { document.removeEv ...

  3. vue3 ts 类式写法的mixins

    vue-property-decorator 混入(mixins) // mixins.ts import { Vue } from 'vue-property-decorator' class Mi ...

  4. 重打包APK绕过签名校验

    这里先提一种针对性校强但简单好理解的办法,纯Java实现,代码大概也就50行不到吧. 还有更强的并且能过各种保护(反调试反HOOK反内存修改等等)的万能方法,不过较复杂,长篇大论的,等有空整理出来再提 ...

  5. 关于java.lang.Object类、equals()、toString()的使用、以及方法得重载和重写得一些笔记

    java.lang.Object类 * 1.Object类是所有Java类的根父类; * 2.如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 * ...

  6. 技术分享:Proxy-Pool代理池搭建IP代理

    技术分享:Proxy-Pool代理池搭建IP代理 前言本章内容仅供参考,不涉及实际使用,主要使用Python环境和Redis数据库进行环境搭建,工具网盘存储如下,有问题可以私聊我.网址:https:/ ...

  7. 自己动手从零写桌面操作系统GrapeOS系列教程——1.2 GrapeOS真机演示

    学习操作系统原理最好的方法是自己写一个简单的操作系统. GrapeOS操作系统之前一直运行在模拟器和虚拟机中,今天我们来演示一下GrapeOS在真机上运行的情况. 一.物理机真机 今天演示用的真机是一 ...

  8. 使用kubeadm快速启用一个集群

    使用kubeadm快速启用一个集群 CentOS 配置YUM源 cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] n ...

  9. 关于安装Sqlyog出现的问题

    前言 这篇博客主要是为了分析一下我安装Sqlyog出现的一些问题,也请圈友们帮忙指正一下,我是不是成立冤大头.由于春节前我的电脑死机,我重装了系统,之后格式化了C盘,导致很多软件(之前都安装在C盘)需 ...

  10. Redis 数据类型 Set

    Redis 数据类型 Set(集合) Redis 常用命令,思维导图 >>> Redis 的 Set 是 String 类型的无序集合.集合成员是唯一的,这就意味着集合中不能出现重复 ...