🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

1743閲覧

laradock環境構築

twinparadox

総合スコア42

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2019/12/24 14:45

編集2019/12/25 01:36

#問題点

参考記事

こちらの記事を参考にlaradock環境構築を行いましたが

MySQLの接続設定

1.Laravelプロジェクトの.envを修正 接頭辞が DB_ の部分を編集し、laradockフォルダ/.envに記述されている値に合わせる形になります。

のところで同じように記述したと思うのですがマイグレーションを行った際にエラーが出てしまいます。
どのようにしたら良いのでしょうか?
どなたかご教示頂きたいです。

イメージ説明

hdk:laradock yokonohidekazu$ docker-compose ps Name Command State Ports -------------------------------------------------------------- laraveltutorial_ dockerd- Up 2375/tcp, docker-in- entrypoint.sh 2376/tcp docker_1 laraveltutorial_ docker- Up 0.0.0.0:3306->33 mysql_1 entrypoint.sh 06/tcp, mysqld 33060/tcp laraveltutorial_ /bin/bash Up 0.0.0.0:443->443 nginx_1 /opt/startup.sh /tcp, 0.0.0.0:80 ->80/tcp laraveltutorial_ docker-php- Up 9000/tcp php-fpm_1 entrypoint php- fpm laraveltutorial_ /sbin/my_init Up 0.0.0.0:2222->22 workspace_1 /tcp hdk:laradock yokonohidekazu$ docker-compose exec workspace bash root@65fbec0ee722:/var/www# php artisan migrate Illuminate\Database\QueryException : SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client (SQL: select * from information_schema.tables where table_schema = default and table_name = migrations and table_type = 'BASE TABLE') at /var/www/vendor/laravel/framework/src/Illuminate/Database/Connection.php:669 665| // If an exception occurs when attempting to run a query, we'll format the error 666| // message to include the bindings with SQL, which will make this exception a 667| // lot more helpful to the developer instead of just the database's errors. 668| catch (Exception $e) { > 669| throw new QueryException( 670| $query, $this->prepareBindings($bindings), $e 671| ); 672| } 673| Exception trace: 1 PDOException::("PDO::__construct(): The server requested authentication method unknown to the client [caching_sha2_password]") /var/www/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70 2 PDO::__construct("mysql:host=mysql;port=3306;dbname=default", "default", "secret", []) /var/www/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:70 Please use the argument -v to see more details.

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kazto

2019/12/24 23:07

どのようなエラーが発生したのか、全文を追記お願いします。(できればスクショではなく、テキストで。)
guest

回答1

0

ベストアンサー

workspace にログインした状態で、mysqlクライアントを用いて直でmysqlに接続できますでしょうか?
(mysqlクライアントがインストールされていない場合は、別途インストールしてください。)

投稿2019/12/25 01:50

kazto

総合スコア7196

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

twinparadox

2019/12/25 02:30

コンテナ内でmysqlに接続出来ません。 mysql --version を行ってもcommand not foundです。 どのようにインストールしたら良いのでしょうか?
kazto

2019/12/25 02:51

手っ取り早い方法は、workspace内で`apt-get install mysql-client`を実行してください。 それとは別に正式な方法は、いったんworkspaceからログアウトしまして、 `.env`ファイルに `WORKSPACE_INSTALL_MYSQL_CLIENT=false`という行があるので、これを true に書き換えたのち、`docker-compose build --no-cache workspace`でビルドしなおします。
twinparadox

2019/12/25 04:09

E:パッケージmysql-clientが見つかりません と表示されます。
kazto

2019/12/25 05:18

`apt-get update`は行いましたでしょうか?
twinparadox

2019/12/27 07:21

バージョンは取得出来ました root@30c1be4dd47b:/var/www# mysql --version mysql Ver 14.14 Distrib 5.7.28, for Linux (x86_64) using EditLine wrapper
twinparadox

2019/12/27 12:25

ワークスペースにログインした状態でmysqlに接続出来ません。 コンテナは立ち上がっているハズなのに、起動とコンテナに入る事も出来ません。 hdk:laradock yokonohidekazu$ docker-compose ps Name Command State Ports -------------------------------------------------------------- laraveltutorial_ dockerd- Up 2375/tcp, docker-in- entrypoint.sh 2376/tcp docker_1 laraveltutorial_ docker- Up 0.0.0.0:3306->33 mysql_1 entrypoint.sh 06/tcp, mysqld 33060/tcp laraveltutorial_ /bin/bash Up 0.0.0.0:443->443 nginx_1 /opt/startup.sh /tcp, 0.0.0.0:80 ->80/tcp laraveltutorial_ docker-php- Up 9000/tcp php-fpm_1 entrypoint php- fpm laraveltutorial_ /sbin/my_init Up 0.0.0.0:2222->22 workspace_1 /tcp hdk:laradock yokonohidekazu$ docker-compose up -d mysql Recreating laraveltutorial_mysql_1 ... error ERROR: for laraveltutorial_mysql_1 Cannot start service mysql: error while creating mount source path '/Users/yokonohidekazu/.laradock/data/mysql': mkdir /Users/yokonohidekazu/.laradock: device or resource busy ERROR: for mysql Cannot start service mysql: error while creating mount source path '/Users/yokonohidekazu/.laradock/data/mysql': mkdir /Users/yokonohidekazu/.laradock: device or resource busy ERROR: Encountered errors while bringing up the project. hdk:laradock yokonohidekazu$ docker-compose exec mysql bash ERROR: No container found for mysql_1
twinparadox

2019/12/27 21:55

マイグレーション出来ました。。。 原因はmysqlが立ち上がってなかった気がします。 お話しさせて頂いたおかげです。ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問