PHP 7 + MySQLでPDOを使用するとcould not found driverエラーが発生する
概要
Docker Composeで作成したnginx + PHP-FPM + MySQLの環境でPDOを使ったコードを実行するとcould not found driver
エラーが発生しました。
解決したのでメモです。
目次
- 概要
- 目次
- 参考サイト様
- ソース
- 事象
- コード
- エラー画面
- 原因
- ドライバが未インストールであることを確認
- phpomfo()から確認
- 対策
- パッケージの確認
- Dockerfileの編集
- ドライバがインストールされたことを確認
- phpinfo()から確認
- コードが動作していることを確認
- 雑感
参考サイト様
- How do you get php-mysql extensions installed for php:7-fpm-alpine · Issue #279 · docker-library/php
- 【Docker】phpでPDOにmysqlを使うと、could not find driverと出る【186日目】 - エンジニアのひよこ_level10
Docker Composeで使用するDockerfileの名前を変更する
概要
うまいことタイトルが思いつかなかったんですが任意の名前にファイル名を変更したDockerfile
をdocker-compose.yml
で指定する方法です。
Docker Composeで環境を構築する際にDockerfile
を任意のファイル名で運用したいなと思ったら方法があったのでそのメモです。
全部が全部Dockerfile
だとそのうち首が回らなくなる気がしちゃう笑
目次
- 概要
- 目次
- 参考サイト様
- ソース
- docker-compose.ymlで使用するDockerfileの名前を変更
- ディレクトリ構成
- docker-compose.ymlの編集
- 雑感
参考サイト様
- Compose file version 3 reference #CONTEXT | Docker Documentation
- dockerfileとdocker-compose.ymlのファイル名を変える方法 - Qiita
Docker ComposeでDB構築(MySQL 5.7)
概要
先日から続けているPHPの実行環境の下りでCRUDを実行したいのでDBサーバを構築します。
MySQLは5.7を使用してdocker-compose up
でテーブル作成のSQLスクリプト流し込みまで行います。
DockerのMySQLイメージを使用したDBサーバの構築は過去にASP.NET Coreのアプリで使用したことがあります。 その時は、コンテナ作成時に引数与えて起動してSQL自体はEntityFramework Core(O/Rマッパ)を使用していたので書いていませんでした。
前回、Docker使ってMySQLでDB構築した記事はこちら
目次
- 概要
- 目次
- 参考サイト様
- 環境
- Docker ComposeでMySQLのDBサーバ構築
- 雑感
参考サイト様
- mysql - Docker Hub
- mysql | Docker Documentation
- docker-composeでmysql使うとき初回起動時に複数のDBを作る方法 - Qiita
- 事前にデータ投入をした MySQL Docker イメージを作る場合は /docker-entrypoint-initdb.d を活用すると便利 - kakakakakku blog
VSCode + Docker + XdebugでPHPのデバッグ環境を構築
概要
前回、Docker(nginx + PHP-FPM)を使ってPHPの実行環境を構築しました。
基本構文を覚えたばかりなのでコード毎に動作を追いたいと思った次第です。
Docker(nginx + PHP-FPM + Xdebug)+ VisualStudio Codeでデバッグが行える環境を構築します。
前回作成したDocker(nginx + PHP-FPM)のPHP実行環境にXdebugを追加する形で構築します。
前回の環境構築記事は以下です。
目次
参考サイト様
- Installation - Xdebug: Documentation
- php - Docker Hub
- [PHP]pecl,phpize,extensionという単語を見て頭痛がするあなたへの処方箋 · DQNEO起業日記
- Remote Debugging - Xdebug: Documentation
- [PHP] Xdebug のリモートデバッグ、理解していますか? - Qiita
- IDE debugging with Docker, nginx, PHP7-FPM and Xdebug - Stack Overflow
- Networking features in Docker Desktop for Mac | Docker Documentation
- felixfbecker/vscode-php-debug: PHP Debug Adapter for Visual Studio Code 🐞⛔
- php - PHP7 CLI attempts to load xdebug twice - "Cannot load Xdebug - it was already loaded" - Stack Overflow
.gitignore_globalの作成(.gitignoreのテンプレートサイト紹介)
概要
Git管理の必要ないファイルやディレクトリが、作成される場合があります。
Macであれば.DS_Store
であったり、WindowsであればThumbs.db
等です。
また、VSCodeを使っていると.vscode
などのディレクトリもGitで管理する必要がないため除外したい。
VisualStudio使いなのでプロジェクトを作成する際に自動で作成される.gitignore
をいつも使っていたんですが、
C#以外にも手を出した始めたので都度作成するのが面倒だなと思っていました。
ごろごろしながらネットサーフィンしていると.gitignore_global
なるものを見つけたのでメモしておきます。
都度作成する必要があることには変わりないけど最低限のものは最初から除外されるので少しは手間が減るのかなと思った次第です。
また、ブックマークに埋もれている.gitignore
のテンプレートサイトも同時に紹介しておきます。
目次
- 概要
- 目次
- 参考サイト様
- .gitignoreテンプレートサイトの紹介
- .gitignore_globalって何?
- .gitignore_globalの作成と適用
- .gitignore_globalの作成
- .gitignore_globalの適用
- 雑感
参考サイト様
- gitignore に書くべきでないものは gitignore_global へ - Qiita
- グローバルで.gitignoreを適応する - Qiita
- github/gitignore: A collection of useful .gitignore templates
- gitignore.io - Create Useful .gitignore Files For Your Project