CodeZine(コードジン)

特集ページ一覧

実用的なDockerイメージを使って便利さを体験しよう

最短で使うDocker⼊⾨ 第3回

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2021/01/19 11:00

 最近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オプションで指定します。

Dockerイメージを使うときの3つのポイント
Dockerイメージを使うときの3つのポイント

ファイル共有やグループウェアを提供するNextCloud

 では、実際にDockerイメージを使ってみましょう。今回は、「NextCloud」というソフトを使ってみます。このソフトは、OneDriveやGoogleドライブのようなブラウザーで操作できるストレージ環境を提供するものです。プラグインをインストールすれば、連絡先やカレンダー、メールなどのグループウェア機能も使えます。

ファイル操作機能
ファイル操作機能
Markdownファイルの直接編集もできる
Markdownファイルの直接編集もできる
さまざまなアプリを追加できる
さまざまなアプリを追加できる
カレンダーを追加したところ
カレンダーを追加したところ

 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の初期設定画面が表示されるはずです。

 ここで「ユーザー名」と「パスワード」の欄に、管理者として登録する任意の「ユーザー名」と「パスワード」を入力し、[セットアップを完了します]をクリックしてください。設定はこれだけです。

NextCloudの初期設定画面が表示される
NextCloudの初期設定画面が表示される

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

あなたにオススメ

著者プロフィール

  • 大澤 文孝(オオサワ フミタカ)

    テクニカル・ライター、プログラマ/システムエンジニア。情報セキュリティスペシャリスト、ネットワークスペシャリスト。入門書からプログラミングの専門書まで幅広く執筆。   主な著作として、「Amazon Web Services 基礎からのネットワーク&am...

バックナンバー

連載:最短で使うDocker入門
All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5