Help us understand the problem. What is going on with this article?

Docker docker-compose コマンド 備忘録

More than 1 year has passed since last update.

はじめに

最近、Docker、docker-compose環境にて開発をしていて、そこでよく使うコマンドをメモとしてここに残したいと思います。
新しい知識が入り次第更新する予定です。
また環境がRailsでのコマンドも書いていきます。

現在のコンテナの稼働状況を確認する

$ docker ps

1つのコンテナだけ起動する

例えば、dbコンテナだけを起動したいときは下記のコマンドを打てばいいです。

$ docker-compose up -d db

関係するコンテナを全て終了する

$ docker-compose stop

1つのコンテナだけ終了する

例えば、webコンテナだけ終了したいときは下記のコマンドを打てばいいです。

$ docker-compose stop web

モデルを作る

環境がRailsの場合ですが、以下のコマンドでモデルを作成できます。

$ docker-compose run web rails g model モデル名

カラムを追加する

環境がRailsの場合ですが、以下のコマンドでカラムを追加するマイグレーションファイルを作成します。

$ docker-compose run web rails g migration AddColumnToTables column_name:string

マイグレーションファイルを実行する

環境がRailsの場合ですが、以下のコマンドでマイグレーションファイルを実行します。

$ docker-compose run web rails db:migrate

コントローラーを作る

環境がRailsの場合ですが、以下のコマンドでコントローラーを作成できます。

$ docker-compose run web rails g controller コントローラー名

pry-railsによるデバック

docker ps でwebコンテナの名前を確認したあと、下記のコマンドを打つと、pryにアタッチされます。

$ docker attach webコンテナ名

rspecでのテスト

$ docker-compose run web rspec

参考

docker-composeを使うと複数コンテナの管理が便利に
docker-compose で Rails の開発環境を作る
既存のrailsプロジェクトをDockerで開発する手順

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away