其他
shiny-server内网穿透
写好的shiny App怎么分享?
通过源代码分享上传githup 发布在shiny官网上shinyapps.io 制作成 Desktop exe等软件形式 部署在服务器上shiny-server
1、源代码分享和上传到githup是比较方便的,但是使用的话得下载自己运行,还需要用户拥有R软件才行。
2、发布在shiny官网上方便,随时都可以使用,但是就是国外网址进入比较慢,而且过一段时间不用容易disconect,必须reload或刷新才行,此外还有数量限制,5个免费APP,我 “第二期文章” 讲过。
制作成可分发的应用会比较麻烦,比较容易报错,可参考这两篇文章:
将Shiny APP搭建为独立的桌面可执行程序 如何将Shiny打包成独立的客户端应用程序
在服务器上运行一个app
# app文件夹放在、/srv/shiny-server/目录下
(base) root@DESKTOP-NH8LU7H:/srv/shiny-server# ls -l
drwxr-xr-x 3 root root 4096 Jun 2 13:46 CountToTPM-FPKM
drwxr-xr-x 2 root root 4096 Apr 26 22:30 hello
-rw------- 1 root root 428 Jun 2 16:32 nohup.out
查看自己的ip地址: <172.24.107.255>
(base) root@DESKTOP-NH8LU7H:/srv/shiny-server# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.24.107.255 netmask 255.255.240.0 broadcast 172.24.111.255
inet6 fe80::215:5dff:fe17:273c prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:17:27:3c txqueuelen 1000 (Ethernet)
RX packets 587974 bytes 723570787 (723.5 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 252269 bytes 21888743 (21.8 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
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 3339 bytes 5390676 (5.3 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3339 bytes 5390676 (5.3 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
启动shiny-server服务,挂在后台
(base) root@DESKTOP-NH8LU7H:/srv/shiny-server# nuohup shiny-server &
在浏览器输入ip:3838/app文件夹名称即可运行app http://172.24.107.255:3838/CountToTPM-FPKM/
这样就在本地网页上运行了我们的app 如果运行不了,去/var/log/shiny-server/目录下寻找报错的log文件,一般是没有安装app内需要的R包,在终端进入R安装一下就行了
内网穿透通过外网访问
本地网页上运行的app别人是访问不了也无法使用的,那么我们可以使用一些工具能够达到外网也能进入的效果
by the way,插播一波广告,B站上生信技能树有 shiny的免费教学视频,shiny基础到shiny的部署等,同时也感谢生信技能树的分享和传播。
开始操作:
下载utools,注册并登录
进入utools下载安装内网穿透插件,打开插件
按下图填入我们的网址
外网域名的名字随意填 内网地址填入我们本地ip地址 内网端口3838 填好以后点击连接,连接成功以后复制地址,上下两个均可
最后在我们的浏览器输入
复制的网址/CountToTPM-FPKM/https://zhoulab.cn.utools.club/CountToTPM-FPKM/
这样任何人都可以通过这个网址使用你的app了,不会像shinyapps.io官网这么慢了。
今天的分享就到这里了,敬请期待下一篇!
最后欢迎大家分享转发,您的点赞是对我的鼓励和肯定!
如果觉得对您帮助很大,打赏一下吧!