Shiny Sever Installの方法
R-ShinyServerのインストール
-
IoTデータ、アンケートデータの可視化に使えないかと考えています。
-
AWSへのインストールについては、以下のサイトが参考になります。
-
独自のサーバーへのインストール
- 新規のVPSへShiny Severを構築しますのでLinuxの最初から始めます。
- 注意点は、Ubuntu22.04-jammyで構築するところです。
1. Ubuntuの各種設定と基本のアプリのインストール
- WSLは、「Ubuntu22.04」を使います。
1-1. User関係
- rootのpasswd
passwd root xxxxx
- userの追加&sudoユーザー
adduser xxxx xxxx gpasswd -a user_name sudo
1-2. OSとディスク、メモリの確認
- Ubuntuの確認
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04 LTS Release: 22.04 Codename: jammy
- directoryの確認
$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sdc 251G 1.5G 237G 1% / ...
- メモリーの確認
$ free -m total used free shared buff/cache available ...
1-3. Ubuntuの日本語化等の設定
- パッケージ情報の更新
sudo apt update && sudo apt upgrade
- 日本語言語パックのインストール
sudo apt -y install language-pack-ja
- ロケールを日本語に設定
sudo update-locale LANG=ja_JP.UTF8
- ここでいったん終了してから、Ubuntuを再起動
WindowsTwerminalからPS C:\Users\hp> wsl --shutdown
- タイムゾーンをJSTに設定
sudo dpkg-reconfigure tzdata
- 日本語マニュアルのインストール
sudo apt -y install manpages-ja manpages-ja-dev
- tree のインストール
sudo apt-get install tree
- .bashrcの設定
コマンド追加: alias cl='clear' VSCode起動コマンド追加 /# ADD 20220623 by Matsu /# export PATH=$PATH:"/mnt/c/Users/ユーザー名/AppData/Local/Programs/Microsoft VS Code/bin" export PATH=$PATH:"/mnt/c/Program Files/Microsoft VS Code/bin"
1-4. gitの設定
- git config –global user.email xxxx@mydomain
- git config –global user.name xxxx
- passwd : xxxxxxx
- username,passwdは、pushの際毎回求められます。
1-5. node.jsのインストール
- nodenvのインストール
$ git clone https://github.com/nodenv/nodenv.git ~/.nodenv $ echo 'export PATH="$HOME/.nodenv/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(nodenv init -)"' >> ~/.bashrc $ source ~/.bashrc $ nodenv -v nodenv 1.4.0+5.acf64b3
- nodenv-yarn-install を導入して、 nodenv install コマンドの実行と同時に yarn もインストールします。
- nodeのバージョンは、16.15.0をインストールします。
$ git clone https://github.com/nodenv/node-build.git $(nodenv root)/plugins/node-build $ git clone https://github.com/pine/nodenv-yarn-install.git "$(nodenv root)/plugins/nodenv-yarn-install" $ nodenv install --list $ nodenv install 16.15.0 #Output Installing Yarn... npm notice npm notice New minor version of npm available! 8.5.5 -> 8.12.2 npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.12.2 npm notice Run npm install -g npm@8.12.2 to update! npm notice Installed Yarn 1.22.19 $ nodenv global 16.15.0 #確認 $ curl -fsSL https://github.com/nodenv/nodenv-installer/raw/master/bin/nodenv-doctor | bash $ nodenv versions $ nodenv version $ yarn -v
1-6. Goのインストール
- なんと簡単になりました
- go env :こちらも現在はデフォルトから変える必要性はないです。
$ sudo apt-get update $ sudo apt install golang-go $ go version go version go1.18.1 linux/amd64
1-7. Pythonのインストール
- Ubuntuにデフォルトではいているバージョン確認
$ python3 --version Python 3.10.4
1-8. 本番サーバーの準備
-
VSCodeのSSH設定
-
VPS-Indigoのprivate.keyを配置します。
-
windowsの設定ファイル C:\Users\RYZEN.ssh\config
Host LocalSNS_Indigo_4cpu-4GB HostName xxx.xx.xx.xx User ubuntu Port 22 IdentityFile ~/.ssh/indigo_LocalSNS_private_key.txt
-
OS
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.1 LTS Release: 22.04 Codename: jammy
-
メモリー
$ free -m total used free shared buff/cache available ...
2. R, RStudio, Shinyのインストール
- 最終目標は、Shiny Sernerをインストールします。
- 参考URL:Shiny Server Professional v1.5.18 Administrator’s Guide
2-1. 前提 条件
-
sudo非rootユーザーとファイアウォールを備えたUbuntu 22.04サーバーで、Ubuntu 22.04の初期サーバーセットアップガイドに従ってセットアップできます。
-
Ubuntu 22.04にRをインストールする方法のステップ1でインストールできるRの最新バージョン。
-
Nginxは、ポートと.Nginxをインストールする方法に従ってください Ubuntu 22.04にNginxをインストールする。ステップ 2 では、ポート 80 のみを開く ではなく、ポート 80 とポート 443 の両方を開くコマンドを使用します。80443sudo ufw allow ‘Nginx Full’sudo ufw allow ‘Nginx HTTP’
-
登録済みドメイン名。このチュートリアルでは、全体を通して使用します。
-
次の両方のDNSレコードがサーバー用にセットアップされています。追加方法の詳細については、DNS クイック スタートを参照してください。
-
サーバーのパブリック IP アドレスを指す A レコード。example.com
-
サーバーのパブリック IP アドレスを指す A レコード。www.example.com
-
ドメインの SSL 証明書を暗号化しましょう。これは、Certbot スタンドアロン モードを使用して SSL 証明書を暗号化する方法に従ってインストールできます。ステップ 2 では、その記事で指定されているコマンドの代わりにコマンドを使用して SSL 証明書を取得します。sudo certbot –nginx -d example.com -d www.example.comcertbot certonly
2-2. Ubuntuの設定
- sudo ユーザーの作成:matsu
2-3. RとRStudioのインストール
-
Rの最新バージョンをインストールします。
-
前提 条件
- 少なくとも1GBのRAM
- 特権を持つ非 root ユーザーsudo
- ステップ1 - Rのインストール
- まず、関連するGPGキーを追加します。
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 Output Executing: /tmp/apt-key-gpghome.cul0ddtmN1/gpg.1.sh --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 gpg: key 51716619E084DAB9: public key "Michael Rutter <marutter@gmail.com>" imported gpg: Total number processed: 1 gpg: imported: 1
- ステップ2 - CRANからRパッケージをインストールする
- 最新のバージョンが自動的に選択されます。
- jammy-cran40の表示を確認します。
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" ... Get:7 https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/ InRelease [3622 B] Get:8 https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/ Packages [15.6 kB] ...
- 新しいリポジトリからパッケージマニフェストを含めます。
- コマンドの出力に下記の行が表示された場合は、リポジトリを正常に追加しています。(jammy-cran4)
sudo apt update Output ... Hit:5 https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/ InRelease ...
- Rをインストール
-
準備が整いましたのでRをインストールします。
sudo apt install r-base
-
Rのバージョンを確認し、CRANからRパッケージをインストールして表示を確認します。
sudo -i R R version 4.2.1 >install.packages('txtplot') >library('txtplot') >txtplot(cars[,1], cars[,2], xlab = 'speed', ylab = 'distance') > txtplot(cars[,1], cars[,2], xlab = 'speed', ylab = 'distance') +----+-----------+------------+-----------+-----------+--+ 120 + * + | | d 100 + * + i | * * | s 80 + * * + t | * * * * | a 60 + * * * * * + n | * * * * * | c 40 + * * * * * * * + e | * * * * * * * | 20 + * * * * * + | * * * | 0 +----+-----------+------------+-----------+-----------+--+ 5 10 15 20 25 speed
-
Shinyを使うので、With Shiny and rmarkdown installed, you should see a Shiny doc above.
>install.packages("rmarkdown")
- Ubuntu 22.04にRstudio Serverをインストール
- Rstudio Serverはブラウザからアクセスし操作します。
- Rstudioのダウンロードとインストール
- gdebi-coreは、Rstudioのインストーラーです。
- Download RStudio Server for Debian & Ubuntu
- サイズ:73.43メガバイト|SHA-256: bf89d25e |バージョン: 2022.07.1+554|公開日: 2022-07-25
- Ubuntu22:jammyを確認します。
sudo apt update sudo apt-get install gdebi-core wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2022.07.1-554-amd64.deb sudo gdebi rstudio-server-2022.07.1-554-amd64.deb output ● rstudio-server.service - RStudio Server Loaded: loaded (/lib/systemd/system/rstudio-server.service; enabled; vendor preset: enabled) Active: active (running) ポートの解放 sudo ufw allow 3838
- VPSでファイアウォールの設定をします。
- RStudio でルート アカウントを使用することはお勧めできません。RStudio 専用の通常のユーザー アカウントを作成してください。アカウントには任意の名前を付けることができ、アカウントのパスワードはWebインターフェイスで使用するパスワードになります。
- RStudio はユーザー名とパスワードの入力を求め、サーバーのユーザー名とパスワード データベースをチェックしてユーザーを認証します。
- ユーザー認証に関連するいくつかの注意事項:
- RStudio Serverは、システム ユーザー (ユーザー ID が 100 未満のユーザー) によるログインを許可しません。
- ユーザーの資格情報は、ネットワーク上を移動するときにRSAを使用して暗号化されます。
- useradd、userdelなどの標準のLinuxユーザー管理ツールを使用してユーザーを管理できます。
- 各ユーザーは、ホームディレクトリを使用して作成する必要があります。
- Ubuntuでは、adduserでは、デフォルトでホームディレクトリを作ります。
sudo adduser rstudio sudo passwd rstudio 確認 cat /etc/passwd rstudio❌1003:1003:Xxxxx Xxxx,1,xxxx,:/home/rstudio:/bin/bash rstudio-server❌999:999::/home/rstudio-server:/bin/sh sudo usermod -aG sudo rstudio
- ブラウザからアクセス
- user:rstudio
- password:xxxxxxx
http://xxxx.xx:8787 http://xx.xx.xxx.xx:8787
2-4. Nginxのインストール
- Nginxをインストールします。
-
sudo apt update sudo apt install nginx
- ファイアウォールの調整
- アプリケーションプロファイルのリストを表示します。
sudo ufw app list Available applications: Nginx Full Nginx HTTP Nginx HTTPS OpenSSH
- ポート 80 のみを開く ではなく、ポート 80 とポート 443 の両方を開くコマンドを使用します。
-
sudo ufw allow 'Nginx Full' sudo ufw allow 'Nginx HTTP'
- 確認します。
-
$ sudo ufw status Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Nginx HTTP ALLOW Anywhere Nginx Full ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Nginx HTTP (v6) ALLOW Anywhere (v6) Nginx Full (v6) ALLOW Anywhere (v6)
- ウェブサーバーの確認
- systemctlで状況を確認します。**Active: active (running) **ならOKです。
systemctl status nginx ● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-08-29 21:41:14 JST; 3h 36min ago
- IPを検索
-
curl -4 icanhazip.com xxx.xx.xx.xx
-
サイトへアクセスしNginxを確認します。 http://xxx.xx.xx.xx
-
Nginxプロセスの管理
-
設定の変更のみを行う場合、Nginxは接続を切断せずにリロードできることがよくあります。これを行うには、次のように入力します。 sudo systemctl reload nginx
-
デフォルトでは、Nginxはサーバーの起動時に自動的に起動するように設定されています。これが望ましくない場合は、次のように入力してこの動作を無効にすることができます。 sudo systemctl disable nginx
-
起動時にサービスを起動できるように再度有効にするには、次のように入力します sudo systemctl enable nginx
- サーバーブロックの設定
-
Nginx Webサーバーを使用する場合、サーバーブロック(Apacheの仮想ホストに似ています)を使用して、構成の詳細をカプセル化し、単一のサーバーから複数のドメインをホストできます。your_domainというドメインを設定しますが、これを独自のドメイン名に置き換える必要があります。
-
Ubuntu 22.04のNginxには、 のディレクトリからドキュメントを提供するように設定された1つのサーバーブロックがデフォルトで有効になっています。これは単一のサイトではうまく機能しますが、複数のサイトをホストしている場合は扱いにくくなる可能性があります。を変更する代わりに、your_domainサイト内にディレクトリ構造を作成し、クライアント要求が他のサイトと一致しない場合に提供されるデフォルトのディレクトリとしてそのままにしておきましょう。/var/www/html/var/www/html/var/www/var/www/html
-
your_domainのディレクトリーを次のように作成し、フラグを使用して必要な親ディレクトリーを作成します。-p
2-5. 登録済みドメイン
- GoogleDomainで事前に準備したxxxxx.xxxを使います。
- DNSの設定は、以下の通りです。
- サーバーのパブリック IP アドレスを指す A レコード。example.com
- サーバーのパブリック IP アドレスを指す A レコード。www.example.com
2-6. SSL証明書を暗号化
- Certbotスタンドアロンモードを使用して取得する方法 Ubuntu 22.04でSSL証明書を暗号化
- Certbot には、ドメインの検証、証明書の取得、Apache と Nginx の自動設定を行うためのさまざまな方法が用意されています。
- 設定が完了すると、自動的に更新される有効な証明書が作成されます。さらに、更新された証明書を取得するためにサービスのリロードを自動化することもできます。
- 前提 条件
- Ubuntu 22.04サーバーセットアップチュートリアルで詳述されているように、ルート以外のsudo対応ユーザーと基本的なファイアウォールが設定されたUbuntu 22.04サーバー。
- サーバーを指すドメイン名。DigitalOcean Dropletを使用している場合は、ドメインとDNSのドキュメントに従ってこれを実現できます。このチュートリアルでは、全体を通して使用します。your_domain
- ポート 80 または 443 は、サーバー上で使用されていない必要があります。セキュリティで保護しようとしているサービスが、これらのポートの両方を占める Web サーバーを持つマシン上にある場合は、Certbot の webroot モードなど、別のモードを使用する必要があります
- Certbotのインストール
- スナップ・パッケージを管理するには、snapdを最初にインストールします。
$ sudo snap install core; sudo snap refresh core core 16-2.56.2 from Canonical✓ installed snap "core" has no updates available
- 古いバージョンの certbotの確認と削除とインストール
- 以前に古いバージョンの certbot がインストールされていたサーバーで作業している場合は、先に進む前に削除する必要があります。
sudo apt remove certbot sudo snap install --classic certbot output certbot 1.29.0 from Certbot Project (certbot-eff✓) installed sudo ln -s /snap/bin/certbot /usr/bin/certbot
- 証明書の取得
- Certbot は、ドメインを管理していることを証明するために、Let’s Encrypt API によって発行された暗号化の課題に回答する必要があります。これを実現するには、ポート (HTTP) または (HTTPS) を使用します。ファイアウォールで適切なポートを開きます。
sudo ufw allow 443 Output Rule added Rule added (v6)
- Certbot を実行して証明書を取得できるようになりました。このオプションを使用して、独自の組み込み Web サーバーを使用してチャレンジを処理するように Certbot に指示します。最後に、このフラグを使用して、証明書を要求するドメインを指定します。複数のオプションを追加して、1 つの証明書で複数のドメインをカバーできます。
Nginxを先に止めておきます。 sudo systemctl status nginx sudo certbot certonly --standalone -d xxxxx.xx mail設定: xxxxx.xx@xxxxx.xx output Successfully received certificate. 証明書を正常に受け取りました。 証明書は次の場所に保存されます: /etc/letsencrypt/live/xxxxx.xx/fullchain.pem キーは次の場所に保存されます: /etc/letsencrypt/live/xxxxx.xx/privkey.pem この証明書の有効期限は 2022 年 11 月 27 日です。 これらのファイルは、証明書が更新されると更新されます。 Certbot は、バックグラウンドでこの証明書を自動的に更新するスケジュールされたタスクを設定しました。
- アプリケーションの構成
-
ディレクトリー内のファイルには、これらの各ファイルに関する詳細情報が含まれています。ほとんどの場合、次のファイルのうち 2 つだけが必要です。
sudo ls /etc/letsencrypt/live/xxxxx.xx output README cert.pem chain.pem fullchain.pem privkey.pem
- privkey.pem: これは証明書の秘密キーです。これは安全かつ秘密にしておく必要があるため、ほとんどのディレクトリは非常に制限の厳しい権限を持ち、rootユーザーのみがアクセスできます。ほとんどのソフトウェア構成では、これを または に似たものとして参照します。/etc/letsencryptssl-certificate-keyssl-certificate-key-file
- fullchain.pem:これはすべての中間証明書にバンドルされている証明書です。ほとんどのソフトウェアは、このファイルを実際の証明書に使用し、設定で ‘ssl-certificate’ のような名前で参照します。
- サートボットの自動更新の処理
-
Let’s Encryptの証明書は90日間しか有効ではありません。これは、ユーザーが証明書の更新プロセスを自動化することを奨励するためです。インストールしたパッケージは、 に更新スクリプトを追加することで、これを処理します。このスクリプトは 1 日に 2 回実行され、有効期限が切れてから 30 日以内の証明書を更新します。certbot/etc/cron.d
-
証明書が自動的に更新されるため、更新後に他のタスクを実行する方法が必要です。新しい証明書を取得するには、少なくともサーバーを再起動またはリロードする必要があり、手順3で述べたように、使用しているソフトウェアで動作させるために何らかの方法で証明書ファイルを操作する必要があります。これが Certbot のオプションの目的です。renew_hookを追加するには、Certbot の更新設定ファイルを更新します。Certbot は、最初に証明書をフェッチした方法の詳細をすべて記憶し、更新時に同じオプションを使用して実行されます。フックを追加するだけです。お気に入りのエディタで設定ファイルを開きます。renew_hook
-
sudo vi /etc/letsencrypt/renewal/xxxx.xx.conf
- 自動更新のテスト
- OK
sudo certbot renew --dry-run output デバッグ ログを /var/log/letsencrypt/letsencrypt.log に保存する - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - /etc/letsencrypt/renewal/xxxxx.xx.conf の処理中 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - アカウントが登録されました。 xxxxx.xx の既存の証明書の更新をシミュレートする - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - おめでとう、シミュレートされたすべての更新が成功しました: /etc/letsencrypt/live/xxxxx.xx/fullchain.pem (成功)
- nginxへ変更
- 変更するとOK
sudo certbot --nginx 1: Attempt to reinstall this existing certificate 2: Renew & replace the certificate (may be subject to CA rate limits) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 1 Deploying certificate Successfully deployed certificate for xxxxx.xx to /etc/nginx/sites-enabled/default Congratulations! You have successfully enabled HTTPS on https://xxxxx.xx
2-7. Certbotのインストール
- Shiny R パッケージを公式リポジトリからインストールして、すべてのユーザーが使用できるようにするには、次のコマンドを使用します。
- インストールが完了したことが示され、ダウンロードされたソースパッケージの場所が特定されます。
sudo su - -c "R -e \"install.packages('shiny', repos='http://cran.rstudio.com/')\"" Output ... * DONE (shiny) The downloaded source packages are in ‘/tmp/RtmpPCeOoz/downloaded_packages’ 注意:warningあり CC src/unix/libuv_la-thread.lo src/unix/thread.c: In function ‘thread_stack_size’: src/unix/thread.c:194:24: warning: comparison of integer expressions of different signedness: ‘rlim_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare] 194 | if (lim.rlim_cur >= PTHREAD_STACK_MIN) | ^~ src/unix/thread.c: In function ‘uv_thread_create_ex’: src/unix/thread.c:242:20: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare] 242 | if (stack_size < PTHREAD_STACK_MIN)
2-8. Shiny Serverのインストール
- このステップでは、Shiny Server をインストールし、Shiny Server がリッスンするポートを経由するトラフィックを許可するようにファイアウォールを調整します。
- https://www.rstudio.com/products/shiny/download-server/ubuntu/
サイズ:91.08メガバイト|SHA-256: 90b1ba6f |バージョン: 1.5.19.995|公開日: 2022/07/27
wget https://download3.rstudio.org/ubuntu-18.04/x86_64/shiny-server-1.5.19.995-amd64.deb
- 次に、次のコマンドを使用して、RStudio Shiny Server のダウンロード ページに一覧表示されている Sha256 チェックサムを使用して、ダウンロードしたファイルの整合性を確認します。
-
$ sha256sum shiny-server-1.5.19.995-amd64.deb 90b1ba6f015e2a83a234c9ccd22ec988992d558224108a63f769e7ac75fda24c shiny-server-1.5.19.995-amd64.deb 90b1ba6f015e2a83a234c9ccd22ec988992d558224108a63f769e7ac75fda24cを確認OK
- パッケージリストを更新し、パッケージをインストールします
- sudo apt install gdebi-coreは、Rstudio Serverでinstallしている場合は不要です。
sudo apt update sudo apt install gdebi-core
- 次のコマンドでShiny Serverをインストールします。
-
sudo gdebi shiny-server-1.5.19.995-amd64.deb output: Shiny Server Shiny Server is a server program from RStudio, Inc. that makes Shiny applications available over the web. Shiny is a web application framework for the R statistical computation language. Do you want to install the software package? [y/N]:y /usr/bin/gdebi:113: FutureWarning: Possible nested set at position 1 c = findall("[[(](\S+)/\S+[])]", msg)[0].lower() Selecting previously unselected package shiny-server. (Reading database ... 118836 files and directories currently installed.) Preparing to unpack shiny-server-1.5.19.995-amd64.deb ... Unpacking shiny-server (1.5.19.995) ... Setting up shiny-server (1.5.19.995) ... Creating user shiny Adding LANG to /etc/systemd/system/shiny-server.service, setting to C.UTF-8 Created symlink /etc/systemd/system/multi-user.target.wants/shiny-server.service → /etc/systemd/system/shiny-server.service. ● shiny-server.service - ShinyServer Loaded: loaded (/etc/systemd/system/shiny-server.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-08-29 23:31:06 JST; 13ms ago Main PID: 52978 (shiny-server) Tasks: 1 (limit: 4661) Memory: 604.0K CPU: 9ms CGroup: /system.slice/shiny-server.service └─52978 /opt/shiny-server/ext/node/bin/shiny-server /opt/shiny-server/lib/main.js Aug 29 23:31:06 i-16100000406869 systemd[1]: Started ShinyServer.
- 次のコマンドを使用して、ポートでリッスンしていることを確認します。
-
$ sudo ss -plut | grep -i shiny tcp LISTEN 0 511 *:3838 *:* users:(("shiny-server",pid=52978,fd=18))
- ポートでリッスンしていることを確認したら、ファイアウォールを変更して、Shiny Serverへのトラフィックの通過を許可します
-
sudo ufw allow 3838
- Webブラウザで訪問してデフォルトのShiny Serverホームページを表示し、Shiny Serverへようこそ、インストールを祝福します。画面の右側に小さなボックスが表示され、エラーが発生しましたというメッセージが表示されます。手順 4 でインストールすると、エラー メッセージは対話型の Shiny Doc に置き換えられます。
- rmarkdownのインストトール
-
rmarkdownをインストールせよとエラーが出るため。
sudo su - -c "R -e \"install.packages('rmarkdown', repos='http://cran.rstudio.com/')\"" sudo systemctl restart shiny-server
-
OK!