clickonce 部署能cs程序_【阿里云ECS】阿里云部署shinyproxy跌打过程

bf9527d16a3d4b21dc86766ecaf387ca.png

最近有个管理上的想法,建设开发咋们广电系统的拓客发展系统。当然,这个系统,可以用Python + Flask或者可以用R语言的shinydashboard快速部署。前面自己写了点R语言shiny登录应用的demo,还有一些ggplot2的快速地图结合数据的呈现,还有一些其他的简单数据呈现。但是,这些并未涉及到MySQL的对接。因为想法和系统的需求还没有明确,不管如何我们先尝试在阿里云进行shinyproxy进行登录部署。

在R语言中,shiny server只有收费的版本才有认证功能,免费版本没有认证功能。如何实现认证登录,目前主流做法是通过shinyjs实现登录认证,经过了解发现shinyproxy能够实现登录认证功能。虽然目前还不是很了解docker,先尝试部署一下。从两个方面进行了尝试,第一在vmware虚拟机上进行部署;第二在阿里云上进行部署。跌打过程如下:

其中,在原来自己的阿里云的实例上进行部署,按照参考的文档和shinyproxy的部署文档进行过程部署,不知道原先总是报错,shinyproxy服务运行几秒后报错,经查,java报spring导入出错。后,重置阿里云实例后按文档部署成功。但是,页面如何更新替换还没有研究。

第一步,安装java8:

1、首先:没有add-apt-repository命令,通过以下命令安装

1. sudo apt-get install python-software-properties

2. sudo apt-get update

4. sudo apt install software-properties-common

5. sudo apt-get update

2、添加ppa

sudo add-apt-repository ppa:webupd8team/java

3、搜索相关安装包

sudo apt-cache search jdk

4、最后安装

udo apt-get install openjdk-8-jdk

第二步,安装Docker相关程序:

1.更新Ubuntu的apt源索引

$ sudo apt-get update

2.安装包允许apt通过HTTPS使用仓库

$ sudo dpkg --configure -a
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

3.添加Docker官方GPG key

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
4.设置Docker稳定版仓库
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
5.更新apt源索引
$ sudo apt-get update
6.安装最新版本Docker CE(社区版)
$ sudo apt-get install docker-ce
查看安装Docker的版本
$ docker --version
检查Docker CE 是否安装正确
$ sudo docker run hello-world

第三步,配置Docker启动项:

创建目录和文件:mkdir docker.service.d,tochu override.conf

新增/etc/systemd/system/docker.service.d/override.conf文件,并添加以下内容
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H unix:// -D -H tcp://127.0.0.1:2375

第四步,安装shinyproxy:

下载shinyproxy:wget https://www.shinyproxy.io/downloads/shinyproxy_2.4.2_amd64.deb

sudo dpkg -i shinyproxy_2.4.2_amd64.deb

sudo service shinyproxy restart

第五步,配置ShinyProxy的application.yml文件:

在/etc/shinyproxy目录下,用curl命令复制application.yml的模板文件,方便后期修改

curl https://raw.githubusercontent.com/openanalytics/shinyproxy/master/src/main/resources/application-demo.yml ,文件模板内容如下:

proxy:title:Open Analytics Shiny Proxylogo-url:https://www.openanalytics.eu/shinyproxy/logo.pnglanding-page:/heartbeat-rate:10000heartbeat-timeout:60000port:8080authentication:ldapadmin-groups:scientists# Example: 'simple' authentication configurationusers:- name:jackpassword:passwordgroups:scientists- name:jeffpassword:passwordgroups:mathematicians# Example: 'ldap' authentication configurationldap:url:ldap://http://ldap.forumsys.com:389/dc=example,dc=comuser-dn-pattern:uid={0}group-search-base:group-search-filter:(uniqueMember={0})manager-dn:cn=read-only-admin,dc=example,dc=commanager-password:password# Docker configurationdocker:cert-path:/home/noneurl:http://localhost:2375port-range-start:20000specs:- id:01_hellodisplay-name:Hello Applicationdescription:Application which demonstrates the basics of a Shiny appcontainer-cmd:["R","-e","shinyproxy::run_01_hello()"]container-image:openanalytics/shinyproxy-demoaccess-groups:[scientists, mathematicians]- id:06_tabsetscontainer-cmd:["R","-e","shinyproxy::run_06_tabsets()"]container-image:openanalytics/shinyproxy-demoaccess-groups:scientistslogging:file:name:shinyproxy.log

编辑application.yml,参数:authentication: authentication method; one of ldap (default), simple or none; 授权登录的方法:ldap(默认),simple(简单,我就是改成这个后就可以用该参数下面的users配置用户),none(无需授权),这里我们改委simple认证方式,就可以登录认证。

这样,授权验证方式改为simple后就可以通过模板文件里面的用户和密码登录http://localhost:8080,登录页面及登录后的页面如下:

2f03236f3932ea261c2569581f3b5a78.png

822aecb5e8b3408a5a46e03b43fa066f.png

b9b54efaeb37ca6fa52928f53934ec2a.png

踩过的坑,分享给大家,一起共勉。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值