docker部署shiny app详细教程
不了解docker的可以自己搜,这里就不赘述了(本文已经很啰嗦了😅)。我是初学者,第一次打包可能有很多写的不对的,欢迎大家评论里批评指正。项目已上传 github 。 为什么 用docker部署R脚本或者shiny app越来越受到R用户的推崇,因为R有两点尤其被诟病(特别是被我周围的python用户们😅): 1. 在安包时经常遇到报错,而且在天朝不用代理,下载速度还很慢,R和Rstudio的代理还得在环境里再设置一遍,否则他不走系统的代理; 2. 版本一更新,R包载入挂了,或者是某函数挂了,得手动安旧版本才能运行(我的部长特别喜欢更新服务器内核,一更新R就升级了,然后有些老软件就挂了😂);python里有virtualenv这个文明利器,可以隔离不同python版本环境,R我目前还没找到可以替代的。 用docker部署R程序就可以很好地解决上述问题,使R脚本的稳定性和可用性大大提高,交付直接给他docker包,只要是会用docker的都能够运行,且和你得到相同的结果,以后就不用再听他们发牢骚了😆。 怎么做 本文主要介绍shiny app的docker部署,操作环境是CentOS7,shiny是一个网页服务,用docker打包特别方便部署。注意本文是讲如何将app整个打包到docker里,如果只想部署shiny-sever可以直接使用现成的镜像。 一、安装docker docker的安装可以查看 官方文档 ,不同系统在文档里都能找到。 运行 sudo systemctl start docker 权限 docker命令需要使用sudo权限,如果想给无sudo权限用户使用,请把他加入docker组: sudo usermod -aG docker username 使用代理 如果想要使用代理下载镜像需要创建如下文件: sudo mkdir -p /etc/systemd/system/docker.service.d sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf 然后往文件添加代理以下信息: [Service] ...