広告

【Laravel Sail】phpMyAdminをインストール

Laravel

当サイトではアフィリエイト広告を利用しています。

広告

はじめに

別な記事でLaravel Sailで環境を構築する手順を解説しました。

Windows
Laravel Sailで開発環境構築【Vite対応】
今回は、Laravel Sailを使って環境の構築を行いました。 SailはDockerですので、開発環境を簡単に用意することもできますし、カスタマイズすることも楽です。
Mac
【M1 Mac】Laravel Sailで開発環境構築【Vite対応】
Laravel Sailを使って環境の構築を行いました。 SailはDockerですので、開発環境を簡単に用意することもできますし、カスタマイズすることも楽です。

Laravel Sailには、phpMyAdminがインストールされていませんので、今回は使えるようにしてみました。

使用するバージョンなど
  • Windows 11 or macOS Monterey (M1)
  • Laravel 8 or 9 or 10
  • phpMyAdmin 5.2.1

2022/09/27 WindowsとMacを使い、最新バージョンで確認しました。
2023/03/11 Laravel10で確認しました。

他にも私のブログで、Laravelについて解説している記事がありますのでご覧ください。

広告

【紹介】個人開発

私の個人開発ですがQuiphaというサービスを開発しました。(Laravel, Vue3など)
良かったら、会員登録して動作を試してみて下さい。

また、Laravel 9 実践入門という書籍を出版しました。
Kindle Unlimitedを契約している方であれば、読み放題で無料でご覧いただくことができます

是非多くの方に読んでいただき、Laravelの開発に少しでもお役に立てたら幸いです。

VS Codeの用意

VS Codeのインストール方法は、以下の記事にまとめましたのでご覧ください。

【VS Code】インストール手順を解説 【Windows/M1 Mac対応】
今回はVS Codeのインストール手順を解説します。WindowsとMacのそれぞれ分けてまとめました。

設定方法は以下を参考にしてください。

【VS Code】オススメの設定・拡張機能・便利機能・ショートカット【Win/Mac対応】
私的に最初に行う設定や、拡張機能、よく使うショートカットや便利な機能をまとめてみました。
広告

phpMyAdminのインストール

docker-compose.yml修正

すでにLaravel Sailで環境構築が済んでいる状態から始めます。

Sailの中身はDockerですので、Laravelプロジェクト直下にあるdocker-compose.ymlを修正します。
phpMyAdminに関する情報を、servicesブロック内に追記します。

# For more information: https://laravel.com/docs/sail
version: '3'
services:
    laravel.test:
...
    phpmyadmin:
        image: phpmyadmin/phpmyadmin
        links:
            - mysql:mysql
        ports:
            - 8080:80
        environment:
            #PMA_USER: "${DB_USERNAME}"
            #PMA_PASSWORD: "${DB_PASSWORD}"
            PMA_HOST: mysql
        networks:
            - sail
...

mariadbの場合は、「mysql」という記述を「mariadb」に変更します。

以下のコマンドでSailを起動します。

sail up

以下のURLにアクセスします。

http://localhost:8080/

phpMyAdminのログイン画面が開きました。

.envに記載している、DBのユーザとパスワードでログインできます。

DB_USERNAME=sail
DB_PASSWORD=password

Laravelのデータベースやテーブルにアクセスすることができました。

ログイン画面を出さない方法

開発環境(ローカルPC)の場合は、毎回phpMyAdminにログインを行うのは面倒です。

先ほどのdocker-compose.ymlの、以下のコメントアウトを解除すれば、ログイン画面が表示されず、phpMyAdminへ自動でログインできます。

# For more information: https://laravel.com/docs/sail
version: '3'
services:
    laravel.test:
...
    phpmyadmin:
        image: phpmyadmin/phpmyadmin
        links:
            - mysql:mysql
        ports:
            - 8080:80
        environment:
            PMA_USER: "${DB_USERNAME}"
            PMA_PASSWORD: "${DB_PASSWORD}"
            PMA_HOST: mysql
        networks:
            - sail
...

この設定は、必ず開発環境のみとしてください。
Sailに限らず、phpMyAdminコンテナを開発環境以外で使用する場合は、この設定は適切ではありませんのでご注意ください。

余談ですが、「PMA_ARBITRARY: 1」を指定すると、ログイン画面で「サーバ」を指定できるようになります。(今回の場合は「mysql」)

# For more information: https://laravel.com/docs/sail
version: '3'
services:
    laravel.test:
...
    phpmyadmin:
        image: phpmyadmin/phpmyadmin
        links:
            - mysql:mysql
        ports:
            - 8080:80
        environment:
            PMA_ARBITRARY: 1
        networks:
            - sail
...

MariaDBの場合

MariaDBでも使用することができます。
詳しくは以下の記事をご覧ください。

【Laravel】SailでMariaDBを使う
Laravel SailでMariaDBを使う方法をまとめました。

さいごに

SailはDockerで動いていますので、環境の構築がとても楽にできます。
開発にはphpMyAdminは必須だと思いますが、インストールしましょう。

他にも私のブログで、Laravelについて解説している記事がありますのでご覧ください。

LaravelMacOSPHPWindowsプログラミング
広告

個人開発

千草 @chigusaweb

現役のITエンジニア。 気ままにコードを書いたり技術情報を発信しています。 Webアプリ/Windows・Macアプリ/モバイルアプリなど。 (Java, PHP, Javascript, Swift, Python, C#, 他) 個人開発:Clibor, Quipha, TXT-Crypter, 符計算特訓, チグサツール Kindle本: Laravel9 実践入門, 他

クリップボード履歴

Clibor

Windows

Cliborはシンプルで高機能なクリップボード履歴ソフトです。
また普段よく使うワードを定型文として登録し、いつでもクリップボードに保存することができます。高度なテキスト整形・FIFOモード・ホットキーに対応。

クリップボード履歴

Windows版Cliborの利便性を、そのままMacでも。
定型文登録、高度なテキスト整形、FIFOモードなど、便利なクリップボード履歴機能を利用できます。macOS最新のTahoeにも対応。

テキスト暗号化

テキストを暗号化してURLで共有・保存できる無料サービスです。
パスフレーズを知る人だけが復号できます。登録不要、データはサーバーに保存されません。
Notionでも利用できます。

学習

Quipha

Web / iOS

自分だけの問題集や問題を作成し、クイズを行い、学習に活用することができるアプリです。
例えば、学校の授業、語学学習、IT資格やその他の資格など多彩な分野での学習を支援します。
いつでも、どこでも、あなたの学習をサポート。

ツール

日常の「ちょっとした効率化」をサポートするWeb便利ツール集。
テキスト・データ処理から最新のAI連携まで、日々のちょっとした手間でググりがちなユーティリティを1つの場所に集約。

麻雀

麻雀の符計算をひたすら特訓しマスターしましょう。
初心者の方はもちろん、もっと速く計算したい方にも役立ちます。
5万対局以上の実践から問題を収録。

コメント

  1. ポメ より:

    いつも参考にさせて頂いております。

    一点質問がありまして、こちらの記事を参考に、laravel sail環境を初めて構築しておりますが、phpMyAdminをインストールしようとしたら、ログイン画面の表示まではされましたが、下記のエラーが出ました。

    mysqli::real_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo for mysql failed: Temporary failure in name resolution

    バージョン
    php:8.1(バージョンを下げました)
    mysql:8.0(5.7でもやりましたが同様です)
    laravel:10

    最初に構築した時には、ログインが出来ました。
    ただ、mysqlのバージョンを下げ忘れていて、5.7に変更したらエラーが出るようになりまして、その後、0からsailを構築し直して8.0で試したり、.envファイルのDB_HOSTをlocalhostに変えてみたりと色々と試したのですが、このエラーが解消せず進めない状態になっております。

    何か解消方法等ご存知でしょうか。

    • ポメ より:

      申し訳ございません。

      こちら自己解決しました。

      どうやらmysqlのバージョンを変えた後に、docker側のvolumeやimage等を削除して再度立ち上げないと上手く動作しないようでした。

      コンテナ上でmysqlがerrorになっていて、そちら調べて解消したらログイン出来ました。

      大変お騒がせしました。

タイトルとURLをコピーしました