最近Dockerという⾔葉を聞くけれども、よくわからない。新しい技術なので、そう思う⼈も多いでしょう。それは体験が⾜りないからです。ひとまず体験すれば、Dockerの便利さがすぐにわかると思います。この連載では、Dockerの利点を⽣かし、業務に必要となりそうなさまざまなサーバーを⼿早く簡単に作っていくことを⽬指します。第3回からは、実用的なDockerイメージを使って、Dockerの便利さを体験していきます。今回は、OneDriveやGoogleドライブのようなWebストレージや連絡先、カレンダーなどのグループウェア機能を自分で作れる「NextCloud」を使ってみます。
対象読者
- Linuxの基礎コマンドを少し知っている方
- 簡単にサーバーを構築したいインフラ技術者、開発者
Dockerイメージを使うポイント
Docker Hubには、たくさんのDockerイメージが登録されており、docker runするだけでコンテナ化し、すぐに使えます。このときポイントとなるのは、次の3点です。これらの情報は、Docker Hubに登録されたドキュメントに記載されていることがほとんどなので、確認しておきます。
1. ポート設定
通信に用いるポート番号です。docker runする際に、-pオプションを使ってポートの結び付けを指定します。
2. 永続化すべきディレクトリ
コンテナ内部のディレクトリのうち、マウントを必要とするディレクトリです。例えば「コンテンツを保存するディレクトリ」「データベースを保存するディレクトリ」などは、docker runする際に、-vオプションでそのディレクトリをマウントし、コンテナが破棄されても消えないようにします。
3. 設定情報
ほとんどのDockerイメージは、環境変数などを使って各種設定をします。docker runする際に、-eオプションで指定します。
ファイル共有やグループウェアを提供するNextCloud
では、実際にDockerイメージを使ってみましょう。今回は、「NextCloud」というソフトを使ってみます。このソフトは、OneDriveやGoogleドライブのようなブラウザーで操作できるストレージ環境を提供するものです。プラグインをインストールすれば、連絡先やカレンダー、メールなどのグループウェア機能も使えます。
NextCloudは、Docker Hubに公式イメージがあるため、docker runすることで、すぐに使えます。今回は、このNextCloudを実際に使いながら、どんなところに着目して公開されているイメージを使えばよいのか、その感触をつかんでいきたいと思います。
NextCloudを起動する
Dockerイメージを利用するには、まず、ドキュメントを確認しましょう。NextCloudは、Docker Hubの公式イメージとして、次のURLで公開されています。
apacheイメージとfpmイメージ
ドキュメントを読むと、NextCloudのイメージには、「apacheイメージ」と「fpmイメージ」があることがわかります。前者はフルインストールパッケージ、後者はfastCGIプロセス上で動くイメージです。後者は、別途php-fpmというPHPのDockerイメージと組み合わせるものです。ここでは、いろいろとインストールしなくて済む、フルインストールパッケージを使います。
docker runで起動する
ドキュメントの「Using the apache image」の部分に、このapacheイメージを実行する起動コマンド例が示されています。

この記載を読むと、次のように入力することでNextCloudが起動し、ブラウザーから「http://localhost:8080/」でアクセスできるようになることがわかります。
下記の例では、--nameオプションを指定していないので、コンテナにはランダムな名前が付けられます。あとで停止したり破棄したりするときに不便なので、--nameオプションは指定しておいたほうがよいでしょう。
$ docker run -d -p 8080:80 nextcloud
初期設定する
実際に、上記のコマンドを入力して実行してみましょう。実行したら、ブラウザーで「http://localhost:8080/」にアクセスすると、NextCloudの初期設定画面が表示されるはずです。
ここで「ユーザー名」と「パスワード」の欄に、管理者として登録する任意の「ユーザー名」と「パスワード」を入力し、[セットアップを完了します]をクリックしてください。設定はこれだけです。
この記事は参考になりましたか?
- 最短で使うDocker入門連載記事一覧
-
- 実用的なDockerイメージを使って便利さを体験しよう
- Docker入門~Apacheコンテナを起動しよう
- 最短で使うDocker入門~Dockerを体験しよう
- この記事の著者
-
大澤 文孝(オオサワ フミタカ)
テクニカル・ライター、プログラマ/システムエンジニア。情報セキュリティスペシャリスト、ネットワークスペシャリスト。入門書からプログラミングの専門書まで幅広く執筆。 主な著作として、「Amazon Web Services 基礎からのネットワーク&サーバー構築(共著)」(...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
