【Docker超入門 #7】Docker ComposeでRailsを構築しよう

だれでもエンジニア / 山浦清透
1 Jan 202122:44

Summary

TLDRこの動画スクリプトは、Docker Composeを使用してRailsアプリケーションの開発環境を構築する方法について説明しています。Docker Composeを使うことで、複数のコンテナを簡単に管理し、連携させることができます。動画では、Dockerファイルの準備、初期設定、サービスの起動と停止、ログの確認、そしてデータベースの作成と設定などが詳しく説明されています。Docker Composeの基本的なコマンドや使い方を学び、実践的なWebアプリケーションの開発に役立てることができます。

Takeaways

  • 📦 Docker Composeを使用してRailsの開発環境を構築する方法を説明しています。
  • 🛠️ 複数のコンテナ(例:データベース、Webサービス)を一括で管理するためのDocker Composeファイルの作成方法について解説しています。
  • 🔧 個別のサービス(データベースやWebアプリケーション)ごとに設定をカスタマイズする方法を紹介しています。
  • 👩‍💻 実際のRailsアプリケーションのソースコードをコンテナに組み込む手順を詳しく説明しています。
  • 🔄 データベースとWebサービスの間の依存関係を設定し、接続を容易にする方法に焦点を当てています。
  • 🚀 Docker Composeを使ってRailsアプリケーションのビルド、起動、停止を行うコマンドを解説しています。
  • 📑 環境設定や依存ライブラリのインストールが含まれたDockerfileの書き方を説明しています。
  • 🌐 ローカル開発環境でのポート設定とネットワーク設定を行う方法を説明しています。
  • 🔍 Docker Composeのログ管理とトラブルシューティングの方法について紹介しています。
  • 💻 データベースの作成と初期設定を行うプロセスを詳細に解説しています。

Q & A

  • ドッカー本ポーズとは何ですか?

    -ドッカー本ポーズは、複数のコンテナを1つのシステムとして構築・管理するためのツールです。それぞれのコンテナを個別に操作する代わりに、本ポーズファイルで記述することで、一括で管理することができます。

  • ドッカーコンポーズを使用するメリットは何ですか?

    -ドッカーコンポーズを使用することで、複数のアプリケーションやミドルウェアを連携して一つのシステムを構築することができます。また、個々のコンテナを手動で操作する必要がなく、効率的かつ簡単に管理することができます。

  • ドッカーコンポーズでコンテナを定義する際に必要な設定は何ですか?

    -コンテナを定義する際には、イメージの指定、ポートの設定、ボリュームのマウント、環境変数の設定などが必要です。これにより、コンテナが期待通りに動作するようになります。

  • ドッカーコンポーズを使用してアプリケーションを構築する際の基本的な手順は何ですか?

    -基本的な手順は以下の通りです。まずドッカーファイルを作成し、必要なライブラリーや環境変数を設定します。次に、イメージのビルドとコンテナの作成・起動を実行します。最後に、必要に応じてコンテナを停止・削除したり、ログの確認やコマンドの実行を行います。

  • ドッカーコンポーズで実行できる主なコマンドは何ですか?

    -主なコマンドには、build, up, down, ps, logs, exec, pull, push などがあります。これらのコマンドを使用して、イメージのビルドやコンテナの操作、ログの確認、外部コマンドの実行などを行います。

  • データベースの設定を共有するために使用されるボリュームは何ですか?

    -データベースの設定を共有するために使用されるボリュームは、ドッカーコンポーズのボリュームです。これにより、ローカルのデータがコンテナのデータベースに同期されるため、データの永続性が確保されます。

  • 環境変数を使用する目的は何ですか?

    -環境変数は、アプリケーションの設定やデータベースのパスワードなどの機密情報を外部から読み込むことで、セキュリティを向上させ、また設定の変更を柔軟に行えるようにします。

  • レールズアプリケーションの初期設定を行うために使用されるコマンドは何ですか?

    -レールズアプリケーションの初期設定を行うために使用されるコマンドは、`docker-compose run` です。このコマンドを使用して、webサービスに対して `rails new` コマンドを実行し、アプリケーションのひな型を作成します。

  • コンテナをバックグラウンドで実行するために必要なオプションは何ですか?

    -コンテナをバックグラウンドで実行するために必要なオプションは、`-d` です。`docker-compose up -d` コマンドを使用することで、コンテナがバックグラウンドで実行され、ターミナルを解放することができます。

  • 開発環境でのデータベースを作成するために使用されるコマンドは何ですか?

    -開発環境でのデータベースを作成するために使用されるコマンドは、`docker-compose exec` です。このコマンドを使用して、データベースコンテナ内で `rails db:create` コマンドを実行し、データベースを作成します。

  • ドッカーコンポーズを使用して構築された環境を停止・削除するために使用されるコマンドは何ですか?

    -ドッカーコンポーズを使用して構築された環境を停止・削除するために使用されるコマンドは、`docker-compose down` です。このコマンドを使用することで、実行中のコンテナを停止し、関連するリソースをクリーンアップすることができます。

Outlines

00:00

🐳 Docker Composeの導入と基本操作

このセグメントでは、Docker Composeを使用してRailsの開発環境を構築する方法を紹介しています。Docker Composeを利用することで、複数のコンテナ(アプリケーションとデータベースなど)を同時に管理し、簡単に連携させることができる点を強調しています。また、基本的なDocker Composeのコマンド(ビルド、アップ、ダウン)の使い方と、それらがどのようにRailsアプリケーションのセットアップと連動するかについて説明しています。

05:05

📁 プロジェクトディレクトリの設定と初期ファイル

ここでは新しいRailsプロジェクト用のディレクトリを作成し、VS Codeで開くプロセスを紹介しています。Docker関連のファイル(Dockerfile、docker-compose.ymlなど)とRailsのソースコードの配置について説明し、プロジェクトの構成と初期設定の重要性を強調しています。また、これらのファイルがどのように連携してRailsアプリケーションが構築されるかについて詳しく説明しています。

10:10

🔄 データベース設定とDockerの同期

このパートでは、Dockerのボリュームを使用してローカルディレクトリとDockerコンテナ間でファイルを同期する設定方法を解説しています。MySQLのデータベース設定と、環境変数を用いたパスワード管理も説明されています。これにより、データベースのデータがDockerコンテナの再起動後も保持されるようになり、開発の効率化を図ることができます。

15:15

🚀 新しいRailsアプリの生成と設定

Railsの新しいアプリケーションを作成する過程と、それに伴うファイルの生成が説明されています。具体的には、新しく生成されたGemファイルとDockerfileの内容がどのように更新されるか、そしてそれをどうビルドするかについての説明が含まれています。データベースの設定変更とその後のデータベースの作成もこの段階で行われます。

20:15

🛠️ Docker Composeの実行と追加操作

最後のセグメントでは、Docker Composeを使用してRails環境をバックグラウンドで実行する方法と、コンテナの状態を管理するコマンドを紹介しています。ログの確認、コマンドの実行、およびファイルの更新が必要な場合のイメージの再ビルド方法についても説明しています。これにより、開発者は開発プロセスをより柔軟に管理できるようになります。

Mindmap

Keywords

💡Docker

Dockerは、アプリケーションをコンテナ化して複数のプラットフォームで実行できるようにするオープンソースのソフトウェアです。このビデオでは、Dockerを使用して、複数のアプリケーションを一つのシステムとして構築する方法について説明しています。

💡Docker Compose

Docker Composeは、Dockerを使いやすくするツールで、複数のコンテナを一度に管理することができます。このビデオでは、Docker Composeを使用して、一連のサービスを定義し、それぞれのコンテナを簡単に操作する方法を学びます。

💡Webアプリケーション

Webアプリケーションとは、インターネットを介して利用できるアプリケーションのことで、一般的にはブラウザからアクセスします。このビデオでは、Dockerを使用してWebアプリケーションを構築し、その実践的な開発方法について学びます。

💡データベース

データベースは、データの組織化と管理をするためのシステムです。このビデオでは、データベースのバックエンドとしてMySQLを使用し、Docker Composeを使ってデータベースサービスを定義する方法が説明されています。

💡コンテナ

コンテナは、ソフトウェアやアプリケーションを実行するための独立した環境を提供する、Dockerの機能です。このビデオでは、コンテナを使用してWebサービスやデータベースを分離し、それぞれの役割を果たす方法を学びます。

💡Rails

Rails(Ruby on Rails)は、Ruby言語を使用してWebアプリケーションを開発するためのフレームワークです。このビデオでは、Railsを使用してWebアプリケーションを作成し、Dockerでコンテナ化する方法について説明しています。

💡MySQL

MySQLは、オープンソースのリレーショナルデータベース管理システム(RDBMS)で、Webアプリケーションなどで広く使用されています。このビデオでは、MySQL作为后端データベースとして使用し、Docker Composeで管理する方法が紹介されています。

💡環境変数

環境変数は、ソフトウェアアプリケーションが実行環境に応じて動的な方法で設定を変えるための仕組みです。このビデオでは、データベースのパスワードを環境変数に設定し、セキュリティーを向上させる方法が説明されています。

💡ポートバインディング

ポートバインディングは、コンテナのポートとホストのポートを結びつけるプロセスで、外部からコンテナにアクセスできるようにします。このビデオでは、Railsアプリケーションがホストの3000番ポートをバインドし、ローカル環境で動作するように設定する方法が説明されています。

💡データ永続化

データ永続化は、一時的なデータベースやファイルシステムのデータを長期的に保存する方法です。このビデオでは、Docker Composeを使用して、MySQLデータベースのデータをホストのディスクに同期することで、コンテナの再作成や再起動後もデータを保持する方法が説明されています。

💡依存関係

依存関係とは、システムの各コンポーネントが互いにどのように依存しているかを示す関係です。このビデオでは、Webサービスとデータベースサービスの依存関係を定義し、Docker Composeを使って順序にサービスを起動し、適切な連携を行う方法が説明されています。

Highlights

ドッカー本ポーズを使った開発環境構築の説明

ベイズの基本と実践的なwebアプリケーション開発の難しさ

複数のアプリケーションとミドルウェアの連携について

ドッカーコンポーズの紹介とその利点

コンテナを一括で操作できるドッカーコンポーズ

ドッカーコンポーズの書き方とサービスの定義

イメージのビルドとコンテナの作成・起動方法

ドッカーコンポーズの基本的なコマンドの説明

他にも便利なドッカーコンポーズのコマンドがあること

ドッカーコンポーズを使った実践的なサービスの作成

全体の流れと初期設定の説明

ドッカーファイルの書き方と必要なライブラリーのインストール

ジェムファイルと依存関係の設定

サービスの定義とボリュームの設定

データベースの設定とドッカーコンポーズでのデータベース作成

レールズ環境の構築とサーバーの起動

追加の操作とドッカーコンポーズの便利な機能

Transcripts

play00:01

[音楽]

play00:02

貴音です

play00:03

ここからドッカー本ポーズを使って

play00:07

レールずの開発環境を構築していきます

play00:11

今までのところへねベイズの基本はねもうばっちいと音をされています

play00:16

ただねー現時点でねは実践的な web あっ

play00:20

リケーションのね開発関係を作れるかっていうとねちょっとねまぁ難しいんですよ

play00:25

あの web サービスって一つのアプリケーションだけではね

play00:30

成り立たないことがでは多いんですよねアプリケーション+データベース+たといえば

play00:36

マート web サーバーであったりとかそういった

play00:40

複数のアプリケーションとかミドルウェアが連携して一つの猫のシステムっていうのが

play00:45

できていくわけです

play00:47

なので実践的なアプリケーションねどっかで構築しようとしたら

play00:52

複数のアプリケーションを構築してシステムをね構築できるようにならないとね

play00:57

いけないわけです

play00:59

今の知識だけでその実践的な web アプリケーションを作ろうとすると複数の

play01:04

コンテナをね

play01:05

それぞれ個別にね操作したりとかあとはコンテナ管の音通信の設計

play01:11

通信ないその連携を音設定しないといけなかったりとかとしてね結構ねまぁめんど

play01:17

くさいんですよ

play01:18

そこ

play01:19

て登場するのが今回の音主役である

play01:23

ドッカーコンポーズですドッカーコンポーズや6るっていうファイルに記述すしてです

play01:29

play01:29

複数のコンテナーを一括で根間できるんですよ

play01:34

もうね個別にで感じしなくてもいいし歳ね

play01:37

レーン系とかも館

play01:39

単にやってくれるのでめっちゃくちゃね楽なんですよ

play01:42

で書き方としてはまずこんな感じでね

play01:45

サービスシーズの下にコンテナを定義していきますでサンプル今回書いてやつだと

play01:51

例えば db コンテナとまぁ db サービスとウェブサービスという形ですね

play01:56

それぞれのサービスごとにでそのしたい

play01:59

また設定を変えていくような流れになりますに詳しいところはまたあと会に実際に書き

play02:05

ながら解説していきますね

play02:07

これで定義ができたらこのメコンどっか今 pos m ルをね

play02:11

内容をもとにコンテナを操作していきますまず基本的な操作はね

play02:16

病とでやること自体は可愛いじゃないんですよコマンドは変わるだけやること自体は

play02:20

変わらないですとまずイメージのビルドをします

play02:24

そのためのコマンドがどっかポンポーズ

play02:27

フィールドになりますでイメージがビルドできたら

play02:30

続いてコンテナーね作成と起動していきますそれがどっか今ポーズ

play02:37

アップっていうねコマンドになりますちなみオプションでねはい分につけると

play02:42

バックグラウンドで実行することもできます

play02:45

1回ね作成起動してで終了するときにはね

play02:48

今ティアの亭主と削除をねしていきますそのためのコマンドがどっか今ポーズダウンに

play02:55

なります

play02:56

でここがでまぁ一番基本的なコマンドなんですけどここからねその他にもねよく使うね

play03:02

コマンドがあるのでそちらもね最初に紹介している

play03:05

います a

play03:06

一つ目がドッカーコンポーズ ps ですこれ何かっていうと

play03:11

本店雨一覧を書く人表示するものになります

play03:15

で続いてがどっか今ポーズログずこれはね

play03:19

ログを表示してくれます続いてコマンドをね実行する

play03:24

この反動をちょっとわかりにくいですねあのコマンドを実行するとファンドを同じこと

play03:29

言いました

play03:30

あの2つ紹介しますちょっと似てるんですよね一つ目がどっか今ポーズ lan

play03:35

サービス目

play03:37

コマンドという形で指定しますこれするとコンテナを作成してそれでコマンドを実行し

play03:44

ます

play03:44

でも一つがどっか今ポーズ

play03:48

エグゼック service コマンドというふうに指定しますすると起動中の

play03:53

コンテナに対してコマンドを実行しますこれどちらのでコマンドを実行するためのもの

play03:59

なんですけども

play04:00

何が違うかというとどっかポンポーズ卵の方が一からね

play04:04

北海コンテナを作成してコマンドを実行すると

play04:08

ドッカーポンプエグゼックの方が今ね

play04:11

起動中のコンテナに対してコマンドを実行するという違いになってきます

play04:17

でねこれで概要はつかめたので今回は何するかというとレールスを題材に吹く

play04:24

無数の音アプリケーションこの組み合わせたね

play04:27

実践的なサービスっていうのね作っていこうと思います

play04:32

で全体の流れとしてはまずまるいち

play04:35

ドッカーファイルをね用意します下準備していきます

play04:39

marni 初期設定をしていきます

play04:42

でマルサドッカー尾根起動させていきます

play04:46

でまるよって気動車

play04:47

といいねその他の色々な熱以下の操作をして行くバスでその長いでね

play04:52

今回やっていこうと思います愛では早速

play04:56

どっかファイルを用意のところからやっていきましょう

play04:59

今回に新しいディレクトリーを作りますドキュメントの下に今回に僕はレールずどっ

play05:04

かぁっていう

play05:06

ディレクトリーを作りました

play05:07

こちらを使って作業していきましょう屋根こちらをね

play05:12

またね vs コードで立ち上げます今回は初期設定でねあのファイルをちょっと事前

play05:17

に3つ用意しております

play05:19

何多いしたかと言うとまず一つ目がどっかファイルですね

play05:24

続いて二つ目がどっかポンポーズやのルファ

play05:27

れるで3つめがねそう筋れくとりーをつくってソースジェクトにしたりジムファイルを

play05:33

置いておりますという構成ですね

play05:35

あのどっかえーっとディレクプロジェクトの直下に撮っカー関連のファイルとして

play05:41

ここから入るとどっか今ポーズやムルをずおいて

play05:45

で実際の音レール酢のソースコードっていうのはこのソースの下に置くような形でやっ

play05:49

ていこうと思いますではね

play05:52

全体像を見たところで何をまず

play05:56

ているかと言うとね最初にまず今回えっとどっかファイルからね見ていこうと思います

play06:03

どっかファイルね書き方前回見ていきましたね

play06:06

まずでーすのイメージをフロームで指定しますので今回は ruby の2.7あーを

play06:10

使えます

play06:11

続いてねこの欄でネバーごちゃごちゃっていっぱいやってるんですけどここで

play06:16

必要な今回音ライブラリーというのをインストールしております

play06:21

手間得意に具体的に言うとねノード js と

play06:25

アプト get install で濃度 js とやんっていうのをインストールし

play06:29

ていてそちらをね

play06:31

こちらでインストールしておりますということをやっておりますねその上にもね

play06:35

ごちゃごちゃ会

play06:36

ているんですけどこれ基本的にはねあのまあライブラリーのね

play06:40

update 関連とかをねやっているような形になりますこの

play06:44

ヤーンと濃度 js をインストールするためのねはい

play06:47

でまず室のライブラリーを選んでインストールして

play06:50

でその後次行ってのがねまあ今の作業で行くという今回はねスラッシュアップという

play06:56

場所をね作業ディレクトリーにしようと思います

play06:59

作業ディレクトリーを添える指定したら続いてソース以下のね

play07:04

ローカルのソースですねつまりレール酢のソースコード入れる場所なんですけどそっち

play07:10

ラオこのアップの音配下の方にコピーしておきます

play07:16

play07:17

コピーしたら続いてえっとそのルーピー関連のライブラリーのインストールですね

play07:24

こちらバンドル config セットパスでんだーバンドルでインストライブラリー

play07:29

のインストール先を指定してバンドルインストールというので

play07:33

ruby のねジェムって言われてるんですけどまぁその

play07:36

jm four

play07:37

ファイルを払っとで一括でインストールするっていうようなことをまず最初に行って

play07:41

おります

play07:43

でまぁ振り返るとまぁ必要なねヤーンとか濃度 js とかをテーマこれらの者バス

play07:49

テープと関連のライブラリーを最初にストールしておいて

play07:53

でソースコードを総数ディレクトリ以下のソースコードアップのつ下にコピーしてで a

play08:01

バンドインストールで ruby 関連のライブラリーをインストールするっていう

play08:06

ことをこのドッカーファイルでは行っております

play08:10

ではねそちら見てきたので続いてジェムファイルのホイコーともソースディレクトリの

play08:15

下の自分ファイルですね

play08:18

ソースディレクトリ以下のジムファイルこちらの内容を見ていきます

play08:24

ここ何してるかっていうとジェムでレールずだけ指定しておりますあのこれでレースを

play08:29

作る時にレールず

play08:31

のライブこの寿命ね使ってエールズ乳っていうコマンドうちトレイルずにファイル6し

play08:38

play08:38

などを伺っていき生に作ることできるんですよそれをちょっとし実行したいので

play08:43

このジェムレールズっていうのでレールず米 in 使うよってインストールするよと

play08:48

いうことをやっております

play08:49

なおですねこちらうんジェムファイルは猫の今レールずのひな型を作るため専用のね

play08:55

自分ファイルでしてこれレールず new するとその後ね

play08:58

エール頭がぁでもね自分ファイルが手デフォルトいい抑えててそれ

play09:02

置き換わるようなものにはなっていきます続いてね

play09:06

プロジェクト直下にあったどっか今ポーズや6

play09:09

こちらはね見ておきましょうこちら年らにしているかと言うとまずこちらではサービ

play09:15

シーズガーって

play09:17

そこでね2つの音サービスがねあの定義されているんですね

play09:22

一つ目が db とでもう一つが web という2つのサービスがねここではね定義

play09:30

されております

play09:31

でえっとヘナにしているかと言うとまず db 側では

play09:36

こっちゃめりこ

play09:37

db というサービスが mysql 今回使っていて well って言うでも

play09:42

サービスがレール図を示しておりますで db ガーの設定としてはね

play09:48

まずイメージで mysql 8.0という風がイメージを指定しております

play09:54

続いてこのコマンドエネなんか色々としてしている

play09:57

ですけどあのこれは8枚 sk の8.0かちょっと人称形式が変わっていてその人称

play10:04

形式に関する設定ですとこれやってちょっとエラーになるので最初に設定しております

play10:09

ボリューム鈴音声ねえっとこっちの左側がローカルの

play10:14

ディレクトリーで右ががどっカードディレクトリーなんですけどそれでね

play10:20

こちら側の道母のディレクトリーを取っカーガードディレクトリーに対してファイルを

play10:26

play10:26

共有するというかまして同期するっていうは設定をしておりますこれ何しているかと

play10:31

言うとねソースのしたりの ddt ディレク

play10:34

鳥の mysql データっていうのをどっかーーーガーのネパリ部の mysql

play10:40

ガーに同期するとこれするとあの

play10:43

どっかでこれしないと mysql ってコンテナがね

play10:48

db 金ちゃんがるってあの削除されるたんびにへ mysql のデータかね毎回

play10:53

消えちゃうんです

play10:54

そのドッカー連しかデータがないから

play10:57

でもねそうするとで結構開発高でデータを毎回入れなおすのは面倒くさいので

play11:02

ローカルガーにあるデータをで撮っカーガイドを期するようにすると

play11:07

by sk のデータが常にねコンテナを作り直してもそのデータを引きつけるの

play11:12

エネマ開発が楽に7位これを設定しております

play11:16

続いてエンパイア

play11:17

ラメントっていうところで環境変数の設定をしております

play11:21

でこちらをネスは mysql root パスワードっていう環境変数にパスワー

play11:27

ドっていうものを入れておりますあの mysql はねパスワードを設定してないと

play11:32

エラーになるので

play11:33

環境変数でこちらを設定しておきます2

play11:37

ついてウェブのサービスの方を見ていきましょう

play11:40

でえっとまずでビルドとしてドットとしていますこうするとベースのイメージとして

play11:47

今のディレクトリーのちょっと同じ太りにあるどっかファイルを参照するよっていう

play11:51

書き方になります

play11:53

裸先ほどねこちらで見てきたとパー5 ruby のロッカーファイルをこの web

play11:58

の方では使うよという設定です

play12:01

コマンドで実行するコマンドを書いておきます

play12:04

バンドルエグゼックレイルズ杯

play12:07

p 3000番ポート

play12:10

ハイフン日で番員と00000ということで今何してるかっていうとマーレイルースの

play12:16

play12:16

サーバーをこれ起動させておりますというだけですねレールサーバーを起動させますと

play12:22

その際に8ポートは3000番ポートでウェブ

play12:27

ip アドレスのバインドは0000はどこでも ok だよという形でバインドして

play12:32

おくということをやっております

play12:34

はい続いてボリュームずでせまかまたファイル共有になりますソースディレクトリー顔

play12:40

どっかコンテナ内のアップに共有

play12:43

まあ同期するという設定をしておくことで

play12:47

どうかルネファイルをね更新したらこちらのどっかファイルもね自動的に更新される

play12:53

ようにしております

play12:54

はいリポートが自分のローカーの3000羽ポートドッター側の3000番ポートの方

play13:00

に接続させております

play13:03

ついてりペンず音って言うのはね依存関係ないますこれこういう風に書くとね web

play13:08

はウェブサービスの方は db サービスの方に依存しているよという風になります

play13:14

あのこれしないとね通常を

play13:17

レールず側から mysql に接続しようと思ったら接続先情報として

play13:23

で mysql ガーの音 db サービスの

play13:26

その ip アドレスを直接してしないといけないんですよね

play13:30

でもこういう形でペンずをで db っていう風にしておくと接続先のホストのところ

play13:36

ip アドレスのところを dp というふうに記載するだけ接続できるので楽なん

play13:41

ですね

play13:42

はいこれがね

play13:43

どっか今ポーズ破るの内容でしたこういう風に書いておいてあとねドッカーコンポーズ

play13:48

系のコマンドで操作するとこのね

play13:51

ウェブのサービスと dp の音サービスまあそれぞれのポンテ長根

play13:55

コマンド一発でね立ち上がるので楽なんですよねしかも

play14:00

連携もこの dp っていうね

play14:02

この値をね使うだけの雪 web サービスの方か db サーバーの方にね

play14:08

接続もできるのにね連携もなくだというのがどっか今ポーズや無料になります

play14:13

はいではねここからは初期設定にね入っていこうと思いますまずはレールずビューをし

play14:19

てレール州のひな型をね作っていこう

play14:22

と思いますけどッカー今コマンドを実行したいのでどっか今ポーズ卵を使えます

play14:29

でどちらの音サービスに対して実行するかというと web の方ですね

play14:34

web の方に対してレイズの方に対して実行するウェブというふうに指定をしておき

play14:38

ます

play14:39

で今回実行するコマンドがデイズ new

play14:42

ドット配布なハイフン4すっ

play14:45

カリフの配布データベ

play14:48

数が a mysql という形で指定しておきます

play14:53

これにレールず new マイ s キーデータベースは mysql を使うよと

play14:58

いう風にしておりますこのレールず new コマンドによってレールずのひな形が

play15:02

作成されますでは実行してみましょう

play15:06

はいで実行ねちょっとね時間かかるのでし

play15:08

はなく待ちますはいこれでねインストールが完了しましたよね続いてインストールが1

play15:14

回完了したら新しい音順ファイルがねこれ作成されているんですよね

play15:19

えーっとですねこのソースの下見ていただくと分かるんですけどいいましたずわーっと

play15:25

音なんかも大量の塩レイズのファイルが出来ていま

play15:28

ストその中でジェムファイルっていうのがねまた新しく作成されて言って内容がね結構

play15:34

年ぶわーっと出っいくされてね

play15:36

根本的に結構変わっているんですよね

play15:39

でまぁこのジェンファイルが

play15:41

こうシーサー新しいジムファイルの内容がね更新されたりとかあとね

play15:46

どっかファイル自体のね内容が更新された時っていうのはもっかいね

play15:51

イメージをビルドし直しますなのでねここで1回まじゅんファイル新しくなったので

play15:57

撮っか今ポーズビルドでイメージをビルとして大きい

play16:01

ましょう

play16:03

はいビルドできましたこれでまずはねぇ

play16:06

レイルズのひな型をつくってでも改名所でビルドし直すところ前できました

play16:12

続いてやるのがですねデータベースの設定ですね

play16:16

8ソースコードの方言ってですね8

play16:20

こうソースの下のコンフィグの下の湯種データベースや6るっていうファイルがあるの

play16:28

でそちらを開いてくださいここがねデータベースの設定をしております

play16:33

でこちらの中でまぁハスワードがで設定する場所があるのでこれをねえーっと

play16:40

パスワードというふうに入力しておきますこれはねあのどっか今ポーズや塗るの方でね

play16:45

えん by あラーメンとデパスワードっていう風にしましたけどそちらの値を個々に

play16:50

設定しておきます

play16:52

で8るホストっていうのがね接続先ですデータベースのデータベースを接続酒をロー

play16:58

から干すとか db に変えておき

play17:00

ますこの dp っていうのはこのどっか今ポーズやムルでね

play17:05

ディペンつ品で db という風したんですけどねその dbt 値をその接続先情報

play17:10

として使えるというわけです

play17:12

まずは音データベースのこうやって形で接続先情報を修正しておきます

play17:18

はいでへまぁこんな形で雪道

play17:20

草木情報をねデータベース接続先上方修正したら続いてデータベースを作成をしていき

play17:27

ましょう

play17:28

ドッカーコー

play17:29

大津ラン web

play17:32

トレイルズー

play17:34

db クリエイトかなえっとこれ何しているかと言うと

play17:38

どっか今ポーズ欄でコマンドを実行しますウェブのサービスの方に対して

play17:43

レールず db クリエイトっていうコマンドを実行しますと

play17:47

でデータベでベイズの場合データベースの作成はね

play17:51

レイルズ db クリエイトっていうコマンドで実行数

play17:54

いうのでこちらをせ実行しておきましょうです

play17:58

あのー当たり前の話なんですけど最初はねデータベース

play18:02

そのコンテナ金あってもその中にいわゆるデータベース自体は作られていないので

play18:08

データベースをね

play18:10

最初に作っておく必要がありますとこちらのコマンドを実行し

play18:14

明日とこれでデータベースがで作られましたよと

play18:18

アップ development っていうデータベースとアップテストっていう

play18:21

データベース金

play18:22

作られましたよーとなっておりますこれで

play18:27

初期の音設定がね完了したはずです

play18:30

ではいよいよ軌道にねやっていきましょーどっかを起動させていきます

play18:36

どっカートンポーズアップでコンテナを作成して起動させてね

play18:43

いきましょう

play18:46

はいえこれでおそらくサーバーがに起動しているはずです

play18:50

ではねローブラウザでローカルホストの今回3000番ポートをで使うように指定して

play18:58

いるのでアクセスしてみましょう

play19:00

はいきましたレイズで矯正をしたい子

play19:04

これでね無事ねぇデイズがね動きましたね

play19:07

はいえーではねここから追加の操作について見ていきますよくあるね操作がいくつか

play19:13

あるのでそちらので紹介をして多くって実際に開発できるように紹介していこうと思い

play19:20

ますまずは音サーバーの止め方ですね

play19:23

こちらねコントロー

play19:24

オール c command c とかで求められるんですけど

play19:27

えっ maiko タブを開いちゃって

play19:30

ですね先ほどディレクトリーに同じディレクトリーにまず1回移動しますと

play19:35

プロジェクトディレクトリでコマンドとしてどっかーーー

play19:39

今ポーズダウンという風にするとねええ

play19:43

行くとそのサーバーを停止して削除をね

play19:47

イペに行うことができますどっか今ポーズダウンとなんかうまくいきませんでしたね

play19:52

どっか行ってみますとか今ポーズターン

play19:56

はいデダナーンて押すとちょっと見にくくてすいません

play19:59

こういう形でサーバーがいい

play20:02

さっシャットダウンされてねこっちもね切れましたねはいという形でねどっか今ポーズ

play20:07

ダウンを使うことで削除ができますと

play20:10

で1回に削除しちゃったけどまた再度起動したいときはねまた圧倒すればいいわけです

play20:15

ドクターコンポーズアップとってオプションとしてハイフン dt オプションがあり

play20:20

ます

play20:21

この配布に聞いて

play20:22

何かっていうとでタッチなんですけどバックグラウンドで実行してくれます

play20:26

さっき前田とねあの本ずっとでターミナルを占領しちゃってたんでね

play20:31

もう一個でための別たべきだかないといけなかったんでちょっとめんどくさいですけど

play20:35

操作がしにくくて

play20:37

ハイフンりってするとバックグラウンド駅どうしくれるので寝た皆を自由に使うことが

play20:41

できます

play20:42

でどういうふうにね今起動しているかを見たいときはどっか梱包す ps とすること

play20:48

でコンテナの音一覧を表示してくれます

play20:51

で state がアップになるっているんでね起動中ということでございます

play20:56

でその他の音操作としてはログを見たいときはねどっかぁこんっ

play21:01

う2ロブずという風にすることでログをね確認することができますあの開発で詰まっ

play21:07

たりとかした時はね

play21:08

こちらでログを見ながら選ん原因とかを突き止めていきましょう

play21:13

あと便利なのがですねコマンドを実行したい時ですねコンテナ内でそのときに使うのが

play21:18

ドッカーコンポーズえぐ

play21:21

シェイク

play21:23

web 例えばバッシュを実行した時はスラッシュ便バッシュという形ですね

play21:28

アートちょっと間違えてませんでこうすると何が起こるかというと

play21:33

六花コンポ jr 絶句でコマンドを実行しますと

play21:36

でサービス web サービスの方で実行しますって実行するコマンドスラッシュ便の

play21:42

すらし bash

play21:43

ですということでこうするとねバッシュが起動してバッシュのプロセスが起動してね

play21:47

コンテの中に入ることができます例えばやるレスとかするとね

play21:51

今ティアナ官 file 実際見えるというわけでございます

play21:55

はい

play21:55

後もう一つですねどっかファイルであったりとかあとジェムファイルね

play22:01

を修正したときにその端シューすよね反映させたいっていう時があるんですよねそう

play22:07

いう時どうするかというとまずイメージから作り直せば ok ですどっか今ポーズ

play22:12

ビルドとこれちょっと実行するとヘッジが

play22:15

語っちゃうんで実行を止めておくんですけまずどっか今ポーズビルドをしますと

play22:20

でヨイショで撮っカーコンポーズビルドで1回イメージをつくり直したら続いてドッ

play22:26

カーコンポーズアップハイフン d という形でね

play22:31

もっかい寝コンテナを作成起動させてあげます

play22:34

はいこれで

play22:35

レイルズ環境ねドッカーコンポーズを使って構築することができました

play22:41

おつかれさまでした

Rate This

5.0 / 5 (0 votes)

Related Tags
DockerCompose開発環境Webアプリケーション実践データベースミドルウェアコンテナRubyRailsMySQL
Do you need a summary in English?