JBrowse使用说明:如何安装JBrowse

简介: JBrowse is a fast, scalable genome browser built completely with JavaScript and HTML5. It can run on your desktop, or be embedded in your website.如果你想要使用JBrowse,一定要有管理员权限,否则建议使用IGV。

JBrowse is a fast, scalable genome browser built completely with JavaScript and HTML5. It can run on your desktop, or be embedded in your website.

如果你想要使用JBrowse,一定要有管理员权限,否则建议使用IGV。

前置要求

你的服务器必须安装有libpng,zlib,libgd,make,C compiler, C++ compiler。 对不同的操作系统有不同的安装方法,如果你有管理员权限,那么用系统自带的管理工具就行。

# Ubuntu/Debian
sudo apt-get install build-essential libpng-dev zlib1g-dev libgd2-xpm-dev
# Red Hat/Fedora/CentOS
sudo yum groupinstall "Development Tools"
sudo yum install libpng-devel gd-devel zlib-devel perl-ExtUtils-MakeMaker
# Mac OS X (homebrew)
## 需要在APP Store 安装 xcode 或在命令行输入gcc提示安装
xcode-select --install
brew install libpng libgd zlib

注:如果你没有管理员权限,就请自行编译并添加到环境变量中。你会发现这非常地麻烦。

安装jbrowse

jbrowse有两种安装形式:

  • 系统级: 面向更多用户,常常部署到网页服务器
  • 普通用户级:满足内网用户的一般需求

系统级安装(最高权限)

系统级安装(需要管理员权限)

# make a directory that this user can write to
# for ubuntu/Debian that is /var/www/; for centos is /var/www/html
sudo mkdir /var/www/jbrowse;
sudo chown `whoami` /var/www/jbrowse;
# cd into it
cd /var/www/jbrowse;
# fetch a JBrowse release zip file
curl -O http://jbrowse.org/releases/JBrowse-1.12.3/JBrowse-1.12.3.zip
# unzip it and cd into it
unzip JBrowse-1.12.3.zip
cd JBrowse-1.12.3
# run setup.sh, quick start with example data
./setup.sh

系统级别的JBrowse安装到/var/www,然后可以通过http://机器IP地址/jbrowse/JBrowse-1.12.3/docs/tutorial/index.html判断安装是否成功。

但是,如果你的服务器上没有安装"apache"或"nginx"等web服务器软件时,上述操作无法成功访问网页。

以下句子你可能已经看不懂了: 尽管软件已经部署在你的服务器上,但是仅仅是你本人才能查看或使用软件,这对外人不可见。就像你家买了一台老罗的畅呼吸,你不和别人说,别人是不知道的。如果他需要你家这台畅呼吸解决他家的空气问题,”唰的一下就没了“,就需要专门铺设一个管道连接你们两家,这样子你家的畅呼吸就把他家的空气也净化了一下。

因此,你需要安装一个web服务器软件,然后设置规则,让别人能够顺利访问到你的本地资源。这里安装的是nginx.

# 安装nginx,基于ubuntu
sudo apt-get install nginx
# 检查是否安装成功
sudo nginx -t
img_f14f988727cae436631e80e7e7fef14e.png
安装检查

启动nginx服务

# 确保80端口没有占用,否则你需要停用相关的进程
netstat -ano | grep 80
# 启动
sudo nginx

浏览器访问主机的IP,比如说我的虚拟机的IP地址是"http://10.10.87.36/"

img_63f13f51153bde0829a2ebead4032951.png
nginx检查

以上网页存放在/var/www/html/index.nginx-debian.html,由/etc/nginx/sites-enabled/default定向所在目录。其中/etc/nginx/sites-enabled/default是/etc/nginx/sites-available/default的软连接。这是nginx安装完成之后默认设置,提供一个案例。如果我们需要配置nginx,使其找到Jbrowse所在目录,就需要在/etc/nginx/sites-available/创建配置文件,然后链接到/etc/nginx/sites-enabled/.

sudo vi /etc/nginx/sites-avaiable/jbrowse
# 内容如下
server {
    listen 8080;
    listen [::]:8080;
    root /var/www/jbrowse/JBrowse-1.12.3;
    index index.html
}
# 链接到/etc/nginx/sites-enabled/
sudo ln -n /etc/nginx/sites-available/jbrowse /etc/nginx/sites-enabled/jbrowse
# 重启
ps -ef | grep nginx
sudo kill -QUIT  nginx 主进程号
sudo nginx

然后你就发现直接可以通过IP:8080就能访问JBrowse,而不是要求那样的一长串地址。

img_3cdfc3e38b7d8f4c0ca47bd5a241f455.png
JBrowse

小规模使用(普通权限)

普通用户级(不需要管理员权限):和系统级的差异,文件存放在用户目录下。

# 软件原始文件,我一般存放在家目录的src文件夹下
cd ~/src &curl -O http://jbrowse.org/releases/JBrowse-1.12.3/JBrowse-1.12.3.zip
# 解压缩,并移动到我软件文件夹下
unzip JBrowse-1.12.3.zip && mv JBrowse-1.12.3 ~/biosoft
# 安装
cd ~/biosoft/JBrowse-1.12.3 && ./setup.sh
img_9b6eb794df87088d6a73feaf334bbbdd.png
setup

普通用户:nginx和apche是针对大型访问站点,如果你只是实验室内容访问,用Python做web服务器就行了。

cd ~/biosoft/JBrowse-1.12.3
python -m SimpleHTTPServer 5000
# 长时间运行
# nohup python -m SimpleHTTPServer 5000 &

是的就是如此简单,你就可以访问"IP:5000"访问页面。但是距离真实情况下的使用,还需要进行后续的配置

小结

其实这两者在安装上没有多大区别,安装到/var/www下是因为文档编写者默认你的服务器已经有web服务器应用,并且那个应用托管了/var/www,而/var/www需要一定的权限。

但是实际上,如果你修改web服务器应用的配置,你可以将JBrowse安装在任意地方。甚至,对于少量的请求,可以直接用Python自带的web服务器让你的JBrowse被外部人员访问到。

目录
相关文章
|
前端开发 JavaScript 测试技术
30个前端和设计必备网站,让你的工作更轻松!
30个前端和设计必备网站,让你的工作更轻松!
3150 1
|
并行计算
最新YOLOv8(2023年8月版本)安装配置!一条龙傻瓜式安装,遇到问题评论区提问
最近需要使用YOLOv8,百度了一下现在网上大多数教程都是比较早期的教程,很多文件已经大不相同,于是我根据官方readme文档,总结了一套安装方法,只需要按照本教程,复制每一段代码,按照教程配置好相应文件即可直接使用。
11126 2
|
3月前
|
人工智能 移动开发 前端开发
文章转视频用什么软件?图文作者开源自动化工作流的真实复盘
本文为公众号图文作者量身打造,详解“文章→视频”自动化方案:从GPT-SoVITS配音、Whisper对齐、Manim/Stable Diffusion生成画面,到FFmpeg/花生AI合成的全开源管线;再升级至花生AI半自动打包流程。含可运行代码、避坑指南与成本对比,实现低成本批量出片。
|
3月前
|
人工智能 运维 容灾
400 电话对接云客服深度技术拆解:中转对接与原生集成架构对比与落地选型最佳实践
在企业客服数字化落地过程中,400热线与云客服系统的打通是构建全渠道语音服务能力的核心环节。目前行业主流包含中转对接、原生集成两种技术实现模式,多数企业在落地时容易出现方案选错、话务卡顿、功能缺失、运维成本偏高、高并发承载不足等问题。 本文基于阿里云云联络中心技术架构,结合行业主流通信服务商的通用落地能力,系统化拆解400电话对接云客服的底层技术、两种对接模式的架构差异、优缺点、适配场景与落地选型标准,搭配实操FAQ与避坑要点,帮助企业技术负责人、运维、开发人员快速完成标准化技术选型与落地部署,内容适配阿里云社区收录、搜索引擎与AI知识库收录规范。
427 0
|
6月前
|
数据采集 自动驾驶 算法
道路设施目标检测数据集(约5000张已标注)|YOLO训练与智能交通应用数据集
本数据集含约5000张真实道路图像,精准标注交通标志、热塑标线、金属护栏、减速带4类设施,采用YOLO标准格式(归一化bbox),已划分train/val/test集。覆盖多场景、多光照、多尺度,支持YOLOv5/v8等直接训练,适用于智能巡检、自动驾驶感知与交通管理。
1308 12
道路设施目标检测数据集(约5000张已标注)|YOLO训练与智能交通应用数据集
|
8月前
|
机器学习/深度学习 编解码 自然语言处理
智能体如何“看懂”界面,精准找到“人想要”的对应地方
本文详解智能体如何像人类一样“看懂”GUI界面,突破传统自动化局限。通过视觉感知、语义对齐、GUI定位与记忆适配四大能力,实现从指令理解到精准操作的全链路意图驱动交互,赋能企业级复杂系统自动化。
554 8
|
7月前
|
机器学习/深度学习 人工智能 监控
火焰与烟雾目标检测数据集(13,500张图片已划分、已标注)| AI训练适用于目标检测任务
本数据集含13,500张高质量火焰与烟雾图像,已精准标注(fire/smoke两类)、划分训练/验证/测试集,覆盖室内外多场景、多光照及复杂干扰环境,兼容YOLOv5/v8/v10等主流框架,专为火灾早期预警与智能安防检测任务设计。
|
10月前
|
监控 新能源 人机交互
探索热辐射:红外发射率的调控艺术与应用(隐身篇)
红外辐射无处不在,物体通过热辐射在空气中传播红外线,而8~14μm等“大气窗口”波段可被探测。红外热成像仪利用温度差异生成图像,广泛应用于军事侦察。实现红外隐身需降低辐射强度,主要途径包括调控发射率、控制温度及阻隔传播。低发射率涂层、隔热材料、相变材料(如VO₂)、超材料与仿生设计等技术不断发展,推动智能、多频谱兼容隐身材料研发。EM10便携式测量仪实现3-5μm与8-14μm双波段同步高精度检测,助力材料研发与现场质量监控,促进红外隐身技术向高效、协同、实用化方向迈进。
|
小程序 JavaScript 前端开发
基于微信小程序的商城购物系统的设计与实现(论文+源码)_kaic
基于微信小程序的商城购物系统的设计与实现(论文+源码)_kaic
|
移动开发 供应链 小程序
如何快速开发一套MES系统?
如何快速开发一套MES系统?本文介绍了从需求评估到持续优化的全流程策略,包括利用低代码平台快速搭建基础模块、梳理业务流程、核心功能模块搭建、用户参与测试、系统集成与数据一致性、培训部署及技术支持等环节。此外,还提供了现成的MES系统源码,帮助企业快速构建或定制化MES系统,减少开发时间和成本,确保系统稳定性和功能性。
1490 1