lycheejam's tech log

チラ裏のメモ帳 | プログラミングは苦手、インフラが得意なつもり。

PHP 7 + MySQLでPDOを使用するとcould not found driverエラーが発生する

概要

Docker Composeで作成したnginx + PHP-FPM + MySQLの環境でPDOを使ったコードを実行するとcould not found driverエラーが発生しました。
解決したのでメモです。

目次

  • 概要
  • 目次
  • 参考サイト様
  • ソース
  • 事象
    • コード
    • エラー画面
  • 原因
    • ドライバが未インストールであることを確認
    • phpomfo()から確認
  • 対策
    • パッケージの確認
    • Dockerfileの編集
    • ドライバがインストールされたことを確認
    • phpinfo()から確認
    • コードが動作していることを確認
  • 雑感

参考サイト様

続きを読む

Docker Composeで使用するDockerfileの名前を変更する

概要

うまいことタイトルが思いつかなかったんですが任意の名前にファイル名を変更したDockerfiledocker-compose.ymlで指定する方法です。

Docker Composeで環境を構築する際にDockerfileを任意のファイル名で運用したいなと思ったら方法があったのでそのメモです。
全部が全部Dockerfileだとそのうち首が回らなくなる気がしちゃう笑

目次

  • 概要
  • 目次
  • 参考サイト様
  • ソース
  • docker-compose.ymlで使用するDockerfileの名前を変更
  • 雑感

参考サイト様

続きを読む

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構築した記事はこちら

kitigai.hatenablog.com

目次

  • 概要
  • 目次
  • 参考サイト様
  • 環境
  • Docker ComposeでMySQLのDBサーバ構築
    • 成果物
    • ディレクトリ構成
    • docker-compose.ymlの作成
      • imageセクション
      • environmentセクション
      • portsセクション
      • volumesセクション
    • docker-entrypoint-initdb.dについて
    • SQLスクリプト作成
    • コンテナ起動&DB確認
      • コンテナ起動
      • DB接続確認
      • DB&テーブル確認
  • 雑感

参考サイト様

続きを読む

VSCode + Docker + XdebugでPHPのデバッグ環境を構築

概要

前回、Docker(nginx + PHP-FPM)を使ってPHPの実行環境を構築しました。
基本構文を覚えたばかりなのでコード毎に動作を追いたいと思った次第です。

Docker(nginx + PHP-FPM + Xdebug)+ VisualStudio Codeでデバッグが行える環境を構築します。

前回作成したDocker(nginx + PHP-FPM)のPHP実行環境にXdebugを追加する形で構築します。

前回の環境構築記事は以下です。

kitigai.hatenablog.com

目次

  • 概要
  • 目次
  • 参考サイト様
  • 環境
  • デバッグ環境の構築
  • トラブルシュート:Cannot load Xdebug - it was already loadedが発生する。
  • 雑感

参考サイト様

続きを読む

.gitignore_globalの作成(.gitignoreのテンプレートサイト紹介)

概要

Git管理の必要ないファイルやディレクトリが、作成される場合があります。
Macであれば.DS_Storeであったり、WindowsであればThumbs.db等です。

また、VSCodeを使っていると.vscodeなどのディレクトリもGitで管理する必要がないため除外したい。

VisualStudio使いなのでプロジェクトを作成する際に自動で作成される.gitignoreをいつも使っていたんですが、
C#以外にも手を出した始めたので都度作成するのが面倒だなと思っていました。

ごろごろしながらネットサーフィンしていると.gitignore_globalなるものを見つけたのでメモしておきます。
都度作成する必要があることには変わりないけど最低限のものは最初から除外されるので少しは手間が減るのかなと思った次第です。

また、ブックマークに埋もれている.gitignoreのテンプレートサイトも同時に紹介しておきます。

目次

  • 概要
  • 目次
  • 参考サイト様
  • .gitignoreテンプレートサイトの紹介
    • キーワードで適切な.gitignoreを作成するgitignore.io
    • GitHubの.gitignoreテンプレートリポジトリ
  • .gitignore_globalって何?
  • .gitignore_globalの作成と適用
    • .gitignore_globalの作成
    • .gitignore_globalの適用
  • 雑感

参考サイト様

続きを読む