便利なスクリプトを使ったインストール

Docker では get.docker.comtest.docker.com において便利なスクリプトを提供しています。 これは Docker CE の安定版あるいはテスト版を、開発機にすばやく対話形式をとらずにインストールするものです。 このスクリプトのソースコードは docker-install リポジトリ にあります。 このスクリプトを本番環境において利用することはお勧めしません。 またこのスクリプトの潜在的リスクについては、十分理解した上で利用してください。

  • スクリプトを実行するには root 権限か sudo が必要です。 したがって十分に内容を確認してからスクリプトを実行するようにしてください。

  • スクリプトは自動的に情報取得を行い、利用している Linux ディストリビューション、そのバージョン、そしてパッケージ管理システムの設定を行います。 なおこのスクリプトは、インストール時にパラメータを受け渡すような設定はできないものになっています。 このことから時には、不適切な設定となる場合があります。 それは Docker の観点の場合もあれば、開発現場のガイドラインや標準に対しての場合もあります。

  • スクリプトはパッケージ・マネージャによって、依存パッケージや推奨パッケージをすべてインストールします。 その際にはインストールして良いかどうかを問いません。 したがって相当数のパッケージがインストールされることもあります。 これはホストマシンのその時点での設定によります。

  • ホスト・マシンに別の方法ですでに Docker をインストールしているのであれば、この便利スクリプトは使わないでください。

次の例は get.docker.com のスクリプトを使って、Linux 上に Docker CE の最新安定版をインストールするものです。 最新テスト版をインストールする場合は、 test.docker.com のスクリプトを利用してください。 テスト版の場合は、以下の各コマンドにおいて get と書かれている箇所をすべて test に置き換えてください。

警告

インターネットからスクリプトをダウンロードしたら、まず内容を十分確認してから実行してください。

$ curl -fsSL get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

<output truncated>

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember that you will have to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group will grant the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.

Docker CE がインストールされました。 DEB ベースのディストリビューションでは Docker が自動的に開始されます。 RPM ベースの場合は手動での実行が必要となるため、 systemctlservice のいずれか適当なものを実行します。 上の出力メッセージに示されているように、デフォルトで非 root ユーザは Docker コマンドを実行できません。

便利なスクリプトを使った後の Docker アップグレード

便利スクリプトを使って Docker をインストールした場合、その後の Docker のアップグレードはパッケージ・マネージャを直接使って行ってください。 便利スクリプトは再実行する意味はありません。 ホストマシンにリポジトリが追加されているところに、このスクリプトを再実行したとすると、そのリポジトリを再度追加してしまうため、問題になることがあります。