2

ShinyProxy を使用して光沢のあるアプリを起動しようとしています - これまでに何度もやったことがあります。ただし、このアプリは、実行に必要な CSS または JS ファイルを正しく使用していません。

アプリを手動で実行すると、docker run -p 3838:3838 my_appすべてが完全に正常に動作します。ただし、ShinyProxy を my_app イメージにポイントすると、結果のアプリは CSS または JS ファイルの読み込みに失敗します。

Dockerfile

FROM openanalytics/r-base

MAINTAINER Daniel Beachnau "DannyBeachnau@gmail.com"

# Dependencies outside of R
RUN apt-get update && apt-get install -y \
    sudo \
    gdebi-core \
    pandoc \
    pandoc-citeproc \
    libcurl4-gnutls-dev \
    libcairo2-dev \
    libxt-dev \
    xtail \
    wget \
    libpq-dev \
    libmariadb-client-lgpl-dev \
    # Might be needed for the archivist R-Library
    dbus \
    systemd \
    # needed for odbc
    unixodbc-dev

RUN apt-get install apt-transport-https curl -y
RUN curl http://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
RUN apt-get update
RUN ACCEPT_EULA=Y apt-get install msodbcsql17 -y

# Download R-Packages
# tidyverse
RUN R -e "install.packages('tidyr')"
RUN R -e "install.packages('dplyr')"
RUN R -e "install.packages('readr')"
# Shiny Packages
RUN R -e "install.packages('shiny')"
RUN R -e "install.packages('shinycssloaders')"
RUN R -e "install.packages('shinydashboard')"
RUN R -e "install.packages('shinyWidgets')"
RUN R -e "install.packages('DT')"
RUN R -e "install.packages('shinyjs')"
RUN R -e "install.packages('flexdashboard')"
# Database Packages
RUN R -e "install.packages('odbc')"
RUN R -e "install.packages('RMySQL')"
# Other
RUN R -e "install.packages('devtools')"
RUN R -e "install.packages('lubridate')"
RUN R -e "install.packages('reshape2')"
RUN R -e "install.packages('grid')"
RUN R -e "install.packages('lemon')"
RUN R -e "install.packages('scales')"
RUN R -e "install.packages('ggthemes')"
RUN R -e "install.packages('ggplot2')"

RUN R -e "devtools::install_bitbucket(repo = 'my_repo/my_package',  auth_user = 'my_username', password = 'my_password')"

# copy the app to the image
COPY . /root

# run the script to update the app data
WORKDIR /root
RUN Rscript app_data_update.R

WORKDIR /root/app
COPY Rprofile.site /usr/lib/R/etc/
EXPOSE 3838
CMD ["R", "-e", "shiny::runApp('/root/app', host='0.0.0.0', port=3838)"]

application.yml

shiny:
  proxy:
    title: ShinyProxy Server
    logo-url: /images/logo-image.png
    landing-page: /
    heartbeat-rate: 10000
    heartbeat-timeout: 60000
    container-wait-time: 60000
    port: 8080
    authentication: ldap

    # Docker configuration
    docker:
      cert-path: /home/none
      url: http://localhost:2375
      port-range-start: 20000
    support:
      container-log-path: ./container-logs
      mail-to-address: DannyBeachnau@gmail.co,

  - name: my_apps_name
    display-name: Shiny App
    docker-image: dbeachnau/my_app
    groups: [Shiny Users Management]
    logo-url: /images/logo-image.png
    container-volumes: ["/path/to/app:/root/app"]


logging:
  file:
    shinyproxy.log

光沢のあるプロキシでアプリがどのように見えるかを次に示します。

問題

手動で実行したときのアプリの外観は次のとおりです。

希望

Chrome の検査ツールのコンソールは、次のようなエラーでいっぱいです。

GET https://myshinyserver.com/container_name/font-awesome-5.3.1/css/all.min.css net::ERR_ABORTED 404 (Not Found)

正しく表示される ShinyProxy で実行されている他のアプリがありますが、それらのアプリの構成方法とこのアプリの構成方法の違いを解決できません。問題を診断するために追加の詳細が必要な場合はお知らせください。すべてのフィードバックをお待ちしております - ありがとうございます。

4

4 に答える 4

0

要求されたフォントを Dockerfile の先頭にインストールする必要があります。リスト「R以外の依存関係」に追加できます。

sudo apt-get install fonts-font-awesome
于 2019-04-09T05:51:43.643 に答える