LoginSignup
0
5

More than 5 years have passed since last update.

LARADOCK で LARAVEL を開発しよう(Part 1)

Last updated at Posted at 2018-04-06

1. はじめに

この記事でざっとDOCKERでLARAVELの開発環境設定方法について紹介したいと思います。

2. DOCKERの基本概念

DOCKERについ別の記事で紹介したいと思いっていますが、今回LARADOCKのことがわかりやすいようにDOCKERの基本概念を共有させていただきます。

IMAGE:
IMAGEは一つの仮想マシンの設計です。
注意:IMAGEは仮想マシンではなくて、仮装マシンの設計だけです。
わかりやすいように、IMAGEがOOPのCLASSと同じだと思いってもいいです。OOPのCLASSなら、一つのCLASSを作成するため、そのCLASSの関数や変数などを定義しないといけません。DOCKERのIMAGEの場合、同じのロジックで、作成した仮想マシンの中に、なんのOSとかそのOSになにをインストールしたいのかとかを定義しないといけません。
IMAGEの属性が書かれるファイルはDockerfileと呼びます。

Dockerfileの例:

Dockerfile
FROM ubuntu:14.04

RUN apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449

RUN apt-get update -y \
    && apt-get install -y software-properties-common wget \
    && wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add - \
    && add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main" \
    && apt-get update -y \
    && apt-get install -y hhvm \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

RUN mkdir -p /var/www

ADD server.ini /etc/hhvm/server.ini

RUN usermod -u 1000 www-data

WORKDIR /var/www

CMD ["/usr/bin/hhvm", "-m", "server", "-c", "/etc/hhvm/server.ini"]

EXPOSE 9000

上記はHHVMというIMAGEのDockerfileです。詳細を見ると、このIMAGEのOSはubuntu:14.04です。あとそのUBUNTU仮想マシンの上でHHVMをインストールするため、たくさんのコマンドを実行するように定義しました。
最後の行は「EXPOSE 9000」なんですが、意味は何かというと、外からこのHHVMに9000ポートでアクセスできるという意味です。

CONTAINER
CONTAINERはIMAGEのインスタンスで、仮想マシンです。
IMAGEはOOPのCLASSと同じなら、CONTAINERはOOPのOBJECTと同じだと連想してもいいです。
複数のCONTAINERの連携を管理するため、DOCKERーCOMPOSEを使います。

3. LARADOCK

LARADOCKのホームページ:http://laradock.io/
LARADOCKは何かというと、LARAVELの開発やデプロイなどのためのIMAGEのDockerfileのセットです。それらの中に、使いたいIMAGEを決めて、PULLして、実行します。
そういえば、LARADOCKを使わないで、自分で最初から、自分の好きなIMAGEを洗濯して、自分のDockerfileを書いて使ってもいいという人が結構いると思いますが、LARADOCKから自分のカスタマイズができるから、それを使うのがいいでしょう。
LARADOCKの使い方は、LARADOCKのホームページに細かく書いてあるが、パーツ2で少し紹介したいと思いっています。ぜひ参考してください。
https://qiita.com/nguyenngocpfievk56/items/241c415c662b8499d96f

メリット:
・DOCKERを使ったら、どんなPCでも、どんなサーバーでも、DOCKER以外、何もインストールしなくて、どんなプロジェクトでも実行できます。そのため、PCやサーバーなどのための不明点がなくなります。
・仮想マシンなので、色々技術を導入して試しても安全で、本番に影響がでるのは心配なしです。
・LARADOCKがちゃんと作られたので、使う可能性があるものが全部入ってると思います。便利だし、使いやすいです。

4. 結論

これから、新しプロジェクトがあれば、DOCKERを使って開発したいと思いっています。特に、LARAVELのプロジェクトなら、LARADOCKをカスタマイズして使いって見ます。

0
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
5