R 言語アプリケーションのコンテナー化

前提条件

  • git クライアント が利用可能であること。 本節の利用例ではコマンドラインベースの git クライアントを用いていきますが、別のクライアントを用いてもかまいません。

概要

本節では R 言語アプリケーションをコンテナー化して実行する手順を示していきます。

サンプルアプリケーションの入手

サンプルアプリケーションでは、人気の Shiny フレームワークを利用しています。

本ガイドにおいて利用するサンプルアプリケーションをクローンします。 端末画面を開いて、作業を行うディレクトリに移動します。 そして以下のコマンドを実行してリポジトリをクローンします。

$ git clone https://github.com/mfranzon/r-docker-dev.git

上の結果として r-docker-dev ディレクトリの中には以下の内容が生成されたはずです。

├── r-docker-dev/
│ ├── src/
│ │ └── app.R
│ ├── src_db/
│ │ └── app_db.R
│ ├── compose.yaml
│ ├── Dockerfile
│ └── README.md

リポジトリ内のファイルについての詳細は、以下を参照してください。

アプリケーションの実行

端末画面内の r-docker-dev ディレクトリから以下のコマンドを実行します。

$ docker compose up --build

ブラウザーを開いて http://localhost:3838 にアクセスし、アプリケーションを確認します。 シンプルな Shiny アプリケーションが表示されたはずです。

端末画面から ctrl+c を押下してアプリケーションを停止します。

バックグラウンドでのアプリケーション実行

アプリケーションは端末から切り離して実行することができます。 それには -d オプションをつけます。 端末画面内の r-docker-dev ディレクトリから以下のコマンドを実行します。

$ docker compose up --build -d

ブラウザーを開いて http://localhost:3838 にアクセスし、アプリケーションを確認します。

シンプルな Shiny アプリケーションが表示されたはずです。

端末画面から以下のコマンドを実行してアプリケーションを停止します。

$ docker compose down

Compose コマンドの詳細は Compose CLI リファレンス を参照してください。

まとめ

本節では Docker を使って R 言語アプリケーションをコンテナー化して実行する方法について学びました。

関連情報

次のステップ

次の節では、コンテナーを使ってアプリケーションの開発を行う方法を学びます。