1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

共同開発時の環境構築方法とトラブルシューター(railsとdockerとgithub)

Last updated at Posted at 2020-09-18

はじめに

※ この記事は知り合いとの共同開発に役立てるために書かれたものです
私たちのwebアプリ開発環境は Dockerコンテナ 上で成り立っています。
webという名前のrailsを動かしているコンテナと、dbというMySQLを動かしているコンテナをdocker-compose upで同時に立ち上げています。

image.png

dockerコンテナを使うメリット

  • 環境の構築が容易で高速
  • 手軽に環境の共有、統一ができる
  • ローカル上の周辺環境との依存を避けられる
  • リリース時にサーバー上にも同じ環境をすぐに構築できる
  • 従来の仮想化技術よりメモリ消費量が少ない

以上の理由よりDockerを使っています。

環境

Ruby2.5.3
Rails5.2.2
MySQL5.7

 環境構築方法

  1. dockerhubにアカウントを作成して、dockerfordesktopをダウンロード
  2. ローカルのPCにgit clone する。
  3. ディレクトリ移動して、docker-compose up
  4. docker-compose exec web rails db:create
  5. docker-compose exec web rails db:migrate
  • 2回目からはdocker-compose upのみ

トラブル時(git編)

gitが全くわからない

githubにpushしたい

$ git checkout -b 作成するブランチ名

もしくは
$ git branch 作成するブランチ名
$ git branch 作成したブランチ名
でも可

でブランチを作る。やっていることがわかるブランチ名が良し

$ git init 
$ git add (ファイル名) もしくは git add .
$ git commit -m "comment"
$ git push origin ブランチ名

pushしたらgithubに黄色いバーが出る。
masterに反映させたい内容なら、Compare & pull request押してね

リモートブランチがわからない

リモートブランチ一覧表示

$ git branch -r

他の人pushしたブランチを自分のローカルにpullしたい

$ git fetch

でローカルのブランチを最新に更新

$ git pull origin REMOT_BRANCH_NAME:LOCAL_BRANCH_NAME

トラブル時(docker編)

docker-compose upしても3000番portが立ち上がらない場合。

コンテナ内に入りたい

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
b9abd4473fd9        watch_project_web   "rails s -p 3000 -b …"   28 hours ago        Up 28 hours         0.0.0.0:3000->3000/tcp              watch_project_web_1
d55c5240d70d        mysql:5.7           "docker-entrypoint.s…"   28 hours ago        Up 28 hours         0.0.0.0:3306->3306/tcp, 33060/tcp   watch_project_db_1

で起動中のコンテナIDを確認

$ docker exec -it {コンテナ名} bash

コンテナに入らずデータベースがみたい

docker-compose exec db mysql -uroot -p

コンテナに入らず、railsコマンドを使いたい

docker-compose exec web rails 〜〜

webというコンテナに入って直接rails 〜〜みたいにコマンドを使ってもいい。

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?