web-dev-qa-db-ja.com

サービスが開始する前に、Ubuntuで「Sudo chmod 666 /var/run/docker.sock」を実行する方法

私はUbuntuサーバー16.04を持っていますが、この権限を必要とするサービスがあります

$ Sudo chmod 666 /var/run/docker.sock

現在、サーバーを再起動するたびに、sshコンソールを開いてそのタスクを実行し、サービスを手動で開始する必要があります。

サービスを開始する前にそのコマンドを実行する必要があります。それを行う最も安全な方法は何でしょうか?

編集:サービスのアカウントはすでにdockerグループのメンバーです。

7
JonDoe297

質問に直接回答するには、次の内容を/etc/init/docker-chmod.confというファイルに追加して、起動時にアクセス権を設定します。

start on startup
task
exec chmod 666 /var/run/docker.sock

しかし、あなたまたはシステムユーザーをdocker- unixグループに追加して、大きなセキュリティ上の脅威になる可能性のあるこのような回避策を回避することを検討する必要があります。

Chmodの結果により、実質的にすべてのローカルユーザーにdocker-socketへの読み取りおよび書き込み権限が付与され、誰でもdockerイメージに干渉できるようになります。

4
pkhamre