プログラミング備忘録

プログラミングメモ

Docker Ruby・Rails

「Couldn't find database client: mysql, mysql5. Check your $PATH and try again.」エラー解決法

Couldn't find database client: mysql, mysql5. Check your $PATH and try again.

今回は「Couldn't find database client: mysql, mysql5. Check your $PATH and try again.」のエラー解決法について解説します。

DockerでRailsの環境を構築し、テーブルを確認しようとして、「docker-compose exec db rails dbconsole」を実行したときの吐かれたエラーです。

Dockerfileの修正


FROM ruby:2.7
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
  && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
  && apt-get update -qq \
  && apt-get install -y nodejs yarn
WORKDIR /app
COPY . /app
RUN bundle config --local set path 'vendor/bundle' \
  && bundle install


FROM ruby:2.7
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
  && echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list \
  && apt-get update -qq \
  && apt-get install -y nodejs yarn mariadb-client
WORKDIR /app
COPY . /app
RUN bundle config --local set path 'vendor/bundle' \
  && bundle install

5行目の後ろに「mariadb-client」を追記しました。

各自の「Dockerfile」に合わせて修正してください。

 

docker-compose build

「Dockerfile」を修正したら、「docker-compose build」を実行してください。

 

docker-compose exec サービス名 rails dbconsole

docker-compose exec web rails dbconsole」を実行してください。
「web」のところは各自サービス名に適用させてください。

Enter password」という表示がでたら、「docker-compose.yml」で設定した「MYSQL_ROOT_PASSWORD」の値を入力してください。

 

MariaDBの使い方をググって調べる

MariaDBの使い方になれてない方はググって調べてみてください。

「MariaDB テーブル一覧」などで調べたら簡単に出てくると思います。

 

関連ページ

「E: Package 'mysql-client' has no installation candidate」のエラー解決方法

 

まとめ

今回は「Couldn't find database client: mysql, mysql5. Check your $PATH and try again.」のエラー解決法について説明しました。
お役に立てれば幸いです。

 

以上。

-Docker, Ruby・Rails

Copyright© プログラミングメモ , 2022 All Rights Reserved Powered by AFFINGER5.