- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我使用堆栈部署了一个 shinyapps:R、docker 和 shinyproxy,到目前为止,这些工具非常好,用户很满意。然而,我在负载平衡方面遇到了一些困难,这样我就可以在解决方案上运行更新时扩展并停止打扰用户。
建议来自 https://www.shinyproxy.io/shinyproxy-containers/ ,我经历了这个过程,但使用了 https://github.com/openanalytics/shinyproxy-config-examples/tree/master/02-containerized-docker-engine容器化的 docker 引擎。当我运行未容器化的 java -jar shinyproxy-2.0.3.jar 时,我的解决方案运行完美。 但现在当我将它容器化时,它变得非常非常慢,事实上,即使内部网络处于 Activity 状态,当我尝试打开它们时容器也会崩溃。
目前我只是想测试容器化 shinyproxy 是否可以在不给我问题但失败的情况下工作。
我在服务器上的Nginx配置
server {
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name qnumsolutions.com www.qnumsolutions.com;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 600s;
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Protocol $scheme;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/qnumsolutions.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/qnumsolutions.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
Shinyproxy 应用程序.yml
proxy:
title: The Operational Intelligence Solution
logo-url: http://qnum.co.za/wp-content/uploads/2018/03/OI-Solution-Icon.png
landing-page: /
heartbeat-rate: 100000
heartbeat-timeout: 600000
port: 8080
authentication: simple
container-log-path: ./container-logs
admin-groups: admin
usage-stats-url: http://159.65.95.235:8086/write?db=shinyproxy_usagestats
# Example: 'simple' authentication configuration
users:
- name: info@qnum.co.za
password: prupr1.
groups: admin
docker:
url: http://localhost:2375
port-range-start: 20000
specs:
- id: OISolution1
description: Application is designed to help organisations use advanced analytics to manage product visibility and variance
container-cmd: ["R", "-e shiny::runApp('/root/hostedoi')"]
container-image: oisolution
container-volumes: ["/home/shiny/database:/mnt/persistent1"]
access-groups: admin
- id: OISolution2
description: Application is designed to help organisations use advanced analytics to manage product visibility and variance
container-cmd: ["R", "-e shiny::runApp('/root/hostedoi1')"]
container-image: oisolution1
container-volumes: ["/home/shiny/database:/mnt/persistent1"]
access-groups: admin
logging:
file:
shinyproxy.log
jetty 文件
FROM openjdk:8-jre
RUN mkdir -p /opt/shinyproxy/
RUN wget https://www.shinyproxy.io/downloads/shinyproxy-2.0.3.jar -O /opt/shinyproxy/shinyproxy.jar
COPY application.yml /opt/shinyproxy/application.yml
WORKDIR /opt/shinyproxy/
CMD ["java", "-jar", "/opt/shinyproxy/shinyproxy.jar"]
最后 sudo docker ps yields
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
bc396c8bd26a ois-shinyproxy "java -jar /opt/shin…" About a minute ago Up About a minute 0.0.0.0:8080->8080/tcp clever_beaver
我查阅的其他链接: https://fly.io/articles/load-balancing-a-fleet-of-docker-containers-using-fly/
非常感谢您的协助。
最佳答案
您的 usage-stats-url
似乎有问题。也许防火墙或其他东西阻止 ShinyProxy 到达这个目的地?我可以重现这种缓慢的行为,但当我评论这一行时它就消失了。
除此之外,您的 application.yml
中还有一些关于 Docker 的错误。我对其进行了一些改动,并设法在我的本地机器上使用此配置运行它(nginx.conf
和 Dockerfile 只是略作改动以满足我对 docker-compose
的需求):
proxy:
title: The Operational Intelligence Solution
logo-url: http://qnum.co.za/wp-content/uploads/2018/03/OI-Solution-Icon.png
landing-page: /
heartbeat-rate: 100000
heartbeat-timeout: 600000
port: 8080
authentication: simple
container-log-path: ./container-logs
admin-groups: admin
#usage-stats-url: http://159.65.95.235:8086/write?db=shinyproxy_usagestats
# Example: 'simple' authentication configuration
users:
- name: info@qnum.co.za
password: prupre35A21.
groups: admin
docker:
internal-networking: true
specs:
- id: 01_hello
display-name: Hello Application
description: Application which demonstrates the basics of a Shiny app
container-cmd: ["R", "-e", "shinyproxy::run_01_hello()"]
container-image: openanalytics/shinyproxy-demo
container-volumes: ["/tmp:/mnt/persistent1"]
container-network: shinyproxy_slow_default
access-groups: admin
- id: 06_tabsets
container-cmd: ["R", "-e", "shinyproxy::run_06_tabsets()"]
container-image: openanalytics/shinyproxy-demo
container-volumes: ["/tmp:/mnt/persistent1"]
container-network: shinyproxy_slow_default
access-groups: admin
logging:
file:
shinyproxy.log
我用 docker-compose
运行了所有东西,见:
version: "3.1"
services:
web:
image: nginx:alpine
ports:
- 80:80
- 443:443
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf
shinyproxy:
image: sp_test
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./application.yml:/opt/shinyproxy/application.yml
关于java - containarized shinyproxy 非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52278328/
我是 ShinyProxy 的新手,我关注了这个 tutorial , 网页正确显示。 但是,我无法使用 tesla 或 jack 用户名和 password 密码登录。日志中的错误信息如下: ERR
我是 ShinyProxy 的新手,我关注了这个 tutorial , 网页正确显示。 但是,我无法使用 tesla 或 jack 用户名和 password 密码登录。日志中的错误信息如下: ERR
问题 在寻找部署 Shiny 应用程序的方法时,我偶然发现了 ShinyProxy 。据我了解,它是 ShinyServer 的替代品。但是,我缺乏一些(非常基本的)知识来遵循所提供的指南。 问题 可
我使用堆栈部署了一个 shinyapps:R、docker 和 shinyproxy,到目前为止,这些工具非常好,用户很满意。然而,我在负载平衡方面遇到了一些困难,这样我就可以在解决方案上运行更新时扩
我正在 R Shiny 中创建一个企业范围的表单输入解决方案,该解决方案将针对大约 400 个用户。 我的问题是(简而言之):由于 R 是一个单线程进程,我是否需要 200 个内核(假设每个内核两个线
我开发了一个 Shiny 的应用程序,我正在尝试使用 shinyproxy 进行首次轻量级部署。所有安装似乎都很好。我已经安装了 docker,java。 我认为构建一个包装应用程序和其他功能的包是个
我是 docker 和 ShinyProxy 的新手。我正在按照 https://www.shinyproxy.io/ 中的步骤操作.使用 Hello-world 和 06_tabset 应用程序一切
我正在尝试将 Docker 容器中的 ShinyProxy 部署到 Azure。另外,我在 Azure DevOps 中有 ShinyApp 存储库。每次开发人员更新存储库中的代码时,我都希望通过 C
我目前正在尝试通过 ShinyProxy 和 Docker 发布我的 Shiny 应用程序。 不幸的是,我的应用程序在发布后无法运行 - 在 PC 本身上它可以正常运行。 我的问题之一涉及“mailR
我是一名优秀的程序员,十分优秀!