7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

railsの環境構築を半日かけて構築した話

Posted at

こんにちは!初投稿です!
今回は半日近く格闘をしたrailsの環境構築の話を備忘録を兼ねてお話ししたいと思います。
環境はDockerで構築しました。

Dockerを立ち上げるまで

$cd 作業フォルダ
$docker compose build
$docker compose up -d

上記で、Dockerを立ち上げていきます。

Dockerに入る

$docker compose exec web bash

諸々インストール

$bundle install
$yarn install

上記で、構築に必要なものをインストールしていきます。
bunle⇨ライブラリをインストール
yarn⇨パッケージを一括管理できる

エラーが起きたコマンド

$bin/rails db:create

こちらを入力した際、下記のエラーが発生した。

Caused by:
Mysql2::Error::ConnectionError: Unknown MySQL server host 'db' (-2)

どうやら、'db'なんていうホスト名に接続できないというエラー。
database.yamlとdocker-compose.ymlのホスト名をチェック

database.yml
default: &default
  adapter: mysql2
  encoding: utf8mb4
  pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
  username: root
  password: password
  host: db
version: '3'
services:
  db:
    image: mysql:5.7
    platform: linux/amd64
    environment:
      TZ: Asia/Tokyo
      MYSQL_ROOT_PASSWORD: password
    volumes:
      - mysql_data:/var/lib/mysql
    ports:
      - 3307:3306

合ってそう。。。

解決した方法

-MacOSをアップデート
マックOSのversionが13だったのですが、14だと動いたという情報を見つけアップデート
そして

$bin/rails db:create

すると、

Mysql2::Error: Host '172.21.0.4' is not allowed to connect to this MySQL server

違うエラーが出てきた。。。一歩前進したのか後進したのかわからないのですが、情報を集めDockerのimageが古いものを参照している可能性があるとのことで、以下のコマンドを実行

$docker volume rm VOLUME NAME
$$bin/rails db:create

すると、
image.png
入れたー!(成功した時のlog撮り忘れちゃいました)

めちゃくちゃ時間がかかりましたが、いろいろな解決策を学べて今回qiitaにも投稿することができたので、結果オーライかなと思います。qiitaの上位にいる方達のように面白い記事が書けたらなーと思います。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?