#1. 背景
参加したハッカソンでdockerを用いて環境構築を行うことになり、せっかくなので記事にしてみた.
#2. この記事を読んでほしい人
・dockerを初めて使う方
・Gitはちょっとだけ使ったことある方
・環境の大枠をチームメンバーが作ってくれたが、どのように自分の環境に反映させるかわからないという方
#3. dockerとは
一言でいうとコンテナ型の仮想環境を作成、実行するためのプラットフォームです。
例えるなら、 説明書を渡せば、どんな部屋でも一瞬で作ってくれる建設会社 のようなイメージです
Dockerfileという名の説明書を実行すれば、どんな部屋(Mysql環境、Python環境など)でも一瞬で作ってくれて、同じ内容の説明書を渡せば、誰でも全く同じ作りの部屋に住むことができます.
#4. docker-composeとは
複数のコンテナで構成されるアプリケーションについて、Dockerイメージのビルドや各コンテナの起動・停止などをより簡単に行えるようにするツールです。
こちらの記事で詳しく説明されています.
https://knowledge.sakura.ad.jp/16862/
例えるなら、建設会社に渡したい説明書がたくさんあるとき、その説明書をまとめて実行してくれる機械 のようなイメージです
#5. 実際の手順
###1. dockerをインストールする
こちらの記事が大変参考になります
https://qiita.com/bezeklik/items/a6a7335acaec12edda45
###2. terminal(git bash)を開く
###3. git cloneする
今回は例としてdockerを用いてmysql環境が作成されているリポジトリを用います
https://github.com/Yugo-Fukuta/HackU_preY_team5
git clone GitHubリポジトリのURL
###4. Dockerのアプリを起動する
###5. ビルドして立ち上げる
# イメージのビルド
docker-compose build
# コンテナの作成
docker-compose up -d
環境構築自体はここまでで完了となります
###(6. 実際に使えるか試してみる)
Mysql環境が構築されているか確認してみます
# コンテナ名の確認
docker-compose ps
# コンテナの実行
docker exec -it コンテナ名 bash -p
# mysqlの起動
mysql -u root -p -h 127.0.0.1
-> パスワードを入力(今回はrootと打てばok)
# hacku_dbというデータベースがあるか確認
mysql> show databases;
#6. なぜこれだけでできるのか
後日追加予定