Preference

クルマ、バイク、コーディング、日々の雑感について

Dockerってなにがうれしん?#1

連投で、#0の続きです。

Docker Compose

黒魔術です笑

dockerコマンド(run/build/start)をめっちゃ簡単にできるやつ!
.yml ファイル1つで複数のコンテナを定義(アプリとdatabaseとか同時に構築してネットワークも勝手に繋がる)

↓がymlファイルの例です:

version: '3'
services:
  db:
    image: postgres
    volumes:
      - ./tmp/db:/var/lib/postgresql/data #相対パスOK
  web:
    build: .
    command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"
    volumes:
      - .:/myapp
    ports:
      - "3000:3000" #3000ポート同士で開放する
    depends_on:
      - db

コンテナを2つ構築しています。db(データベース)とweb(サーバー)を作成して繋げる。

結論

Dockerはすごい楽!に環境構築ができます。
何か新しくプログラミングを勉強したいときや、始めたいとき、ネックになるのがその環境構築。
これはこれで大事だし、ローカルでできたときの喜びはあるものの、一番大切なのは、
「あなた自身が作ったソースコード」!
そして一番楽しいのはプログラミング!細かい部分で挫折する可能性を減らして、プログラミングを楽しもうぜ!