2017-06-24 4 views
0

メインのRStudio Dockerイメージでは、ユーザー/パスワード情報がコンテナ内に存在します。新しいユーザーを作成するには、容器内にadduserを実行する必要があります。https://github.com/rocker-org/rocker/wiki/Using-the-RStudio-image#multiple-usersを参照してください。これは、明らかに/etc/passwd,/etc/shadowなどのように、新しいコンテナに更新するときに問題が発生します。私はそうコンテナ間でユーザーを持続する

docker run -d -p 8787:8787 \ 
-v $(pwd)/passwd:/etc/passwd \ 
-v $(pwd)/shadow:/etc/shadow \ 
... rocker/rstudio 

のようにホストにファイルをマウントすることを考えていましたが、システムのユーザーに関連付けられているファイルがホストにコンテナから露出する必要がある場合、私はわかりませんよ。追加されたユーザーとrocker/rstudioの上に構築された別のイメージを維持する方が良いでしょうか?

答えて

0

私は、必要なすべてのユーザーで新しいイメージを作成することを選択します。再展開が最も簡単です。ホストからファイルをマウントすると、間違った所有権を持つイメージのシステムファイルが表示される危険性があります。オンザフライでユーザーを調整できるようにする必要がある場合は、ホストからマップされていないこれらのファイルだけのボリュームが機能するかもしれませんが、ホームディレクトリも必要になり、おそらくinodeを避けるために/ etc全体をマウントする必要があります個々のファイルのマウントの問題

0

私は理解しています。それは疑問ではありませんでした。しかし、あなたがしようとしていることをそれほど難しいのはその理由です。

いくつかの種類のPAMプラグインを使用して、いくつかのユーザーを(あなたのアプリから)別のauth-pluginに移動することができます。また、/ etc/rstudio_usersのように、それはstfpとftpユーザで行われるのと非常によく似ています。このファイルをコンテナ全体で安全に共有することができます。これは、システムユーザーでもあるすべてのユーザーを共有する恐ろしいことではありません。何らかの理由で初期概念をシャットダウンすることになります。

これを正しく行うには、LDAPのようなものを使用して、認証データを正しく共有してください。

関連する問題