年末年始ということで、作業環境の大掃除&断捨離をするべく、開発環境をDocker+Cloud9に移行中です。今回は、どのマシンからも同じCloud9環境を短時間で構築するべく、DockerでCloud9を構築します。軽量化もしたいので、ベー […]
- 2017.12.07
- Ruby
Rubyで、Capybara + Poltergeistを使ってデータを取得する際に、エラーが出て取得できない時の対処方法です。
- 2017.11.30
- フレームワーク
- Codeigniter
CodeIgniterでフォームを作る時に便利なのがform_validationライブラリ。ただ、ドキュメントを見ると単純なフォームでの使い方だけで、POSTデータが連想配列になっているケースが想定されていなかったので、やり方をまとめまし […]
- 2017.11.28
- Docker
dockerで構築したMySQLサーバーでスロークエリログを出力&確認する方法をまとめました。docker-composeで構成する形式なので、コピペでもそのまま使えるようになっています。
ネット上ではcronをコンテナ内で内包させる方法が多くありますが、今回はさくっと出来るホストマシンのcronを使った方法を採用しました。dockerコンテナの性質から考えると、cronごとコンテナをポータブルさせたほうがメンテナンス性が高い […]
ブラウザでシステムの状態をリアルタイムで見れるシステムモニタ・netdataをdockerでさくっとインストールしてみます。
GitBucketで、定期的にデータバックアップを取る方法です。
簡単に自分専用GitHubを作れる、GitBucketをDockerを使って独自ドメインでさくっと立ち上げます。
- 2017.11.22
- フレームワーク
- Codeigniter
CodeIgniterで管理画面的なものを使っている時に、Insertした時にMYSQLのLAST_INSERT_IDと同じことがCodeIgniterのActive Recordでできないかと思って、調べてみました。
- 2017.11.17
- フレームワーク
- Codeigniter
CodeIgniterで作った既存のシステムと、新しく作ったCodeIgniterシステムを共存させるやり方です。バージョン2系とバージョン3系の混在も可能です。
KUSANAGI Runs on Dockerで動かしているWordPressで、ダッシュボード画面からWordPressの更新ができないエラーに遭遇したので対策方法をまとめました。
- 2017.10.27
- フレームワーク
- Codeigniter
スロークエリを探す際などに、CodeIgniterのクエリビルダ(Active Record)がどのようなSQL文を発行しているのかをチェックしたい時があります。今回は、クエリビルダを使ったSQL文の確認方法をみていきます。
- 2017.10.25
- フレームワーク
- Codeigniter
CodeIgniterで、クエリビルダ(Active Record)を使う時に、同じような条件設定を使いまわしたいという場面があります。そういう時はクエリビルダキャッシングの出番です。
- 2017.10.24
- フレームワーク
- Codeigniter
PHPで簡単にデータベースのバージョン管理ができるマイグレーションを、CodeIgniter + SQLite3の環境で使う際の問題点を解決しようとトライするシリーズ。今回は、drop table対応版です。
- 2017.10.24
- フレームワーク
- Codeigniter
CodeIgniterで、一覧を取得するコードを書く場合に、一覧と合計件数を一発で取得する書き方を考えてみました。
- 2017.10.20
- フレームワーク
- Codeigniter
URLの見た目やSEO対策を考えて、URLのディレクトリ階層を複数設定したい時に、CodeIgniterでどのように処理するのかを見ていきます。
- 2017.10.18
- CSS
WEBサイトでスペック表なんかを出す時にいつもtableを使うのか、定義リスト(dldtdd)を使うのか悩んでしまうタイプの筆者です。定義リストでテーブル風に見せる例は多くあるんですが、入れ子になったdldtdd(table in tabl […]
- 2017.10.11
- フレームワーク
- Codeigniter, ベンチマーク
CodeIgniter+軽量なデータベースSQLiteの組み合わせで、どれくらいのパフォーマンスが出るのかを調べるために、ベンチマークをとってみました。
Dockerで立ち上げたPHP-Apacheな環境でApache Benchを実行する方法を調べてみました。
- 2017.10.11
- フレームワーク
- Codeigniter
DBの設定をファイルで管理できるマイグレーション。CodeIgniterにも標準でMigrationライブラリクラスが搭載されています。今回は、CodeIgniterのMigrationライブラリクラスの動きを確認してみました。
- 2017.10.10
- SQLite3
インデックスが適切に使われているかをチェックするのに便利なMYSQLコマンド「EXPLAIN」。MYSQLのEXPLAINと同じことをSQLite3でやるにはどうすればいいのか調べてみました。
- 2017.10.10
- フレームワーク
- Codeigniter, SQLite3
PHPでデータベースというとMYSQLやMariaDBが人気かつ速度面でも有利ですが、PHPさえあれば動いてくれる軽量な組み込みDB・SQLite3をCodeIgniterで使ってみました。
- 2017.10.06
- Docker
- SEO, Serposcope
サーバーさえあれば、完全フリーで使える無料SEOツール・Serposcope。GRCの代わりに使っているという方も多いのではないでしょうか。今回は、SerposcopeをDockerでさくっと立ち上げてみます。
- 2017.10.05
- Docker
- Codeigniter
軽量なPHPフレームワーク・CodeIgniterを、Docker-composeでさくっと構築する方法をまとめてみました。SSL付き&&DBとの接続設定もしてあります。
- 2017.10.05
- ひとりごと
- phpMyAdmin
前に作業でだけ使ったphpMyAdmin on Dockerを久しぶり立ち上げたらログインができない。おかしい、パスワードもあっているのなぜかと思ったらSSL証明書が原因でした。
とあるサイトで、サイト内容をまるっとコピーされることがありました。そこでサイトコピーを未然に防ぐために、丸コピーをしようとするIPを検出してメールでアラートするプログラムを書いてみました。
- 2017.10.03
- MySQL
MYSQLで、datetimeカラムの検索をする際に、インデックスが使われていないことがあったので、datetimeカラムのインデックスがどのように使われているのかをテストしてみました。
- 2017.10.03
- フレームワーク
- Codeigniter, Grocery CRUD
CodeIgniterでCRUDを使えるようにする便利なライブラリ「Grocery CRUD」で、テーブルのデフォルト表示件数を変更する方法を調べてみました。
安定して0.5secくらいで捌いていたGCEのf1-small・WordPressサーバーですが、運用を続けていくほどに重くなり、SSH接続すらできないようになったので、一時的にg1-smallにアップグレードしてみました。
あまりアクセスがないサイトだと、KUSANAGIのキャッシュが効かなくてサイトが重くなります。そこで、cronジョブを使って定期的にKUSANAGIを起こしてみます。
- 2017.09.27
- フレームワーク
- Codeigniter
nginxプロキシ環境で、base_urlが127.0.0.1になってしまう時の対応です。
- 2017.09.25
- フレームワーク
- Codeigniter
CodeIgniterの.htaccessを設定したけれども、「No input file specified」と出て、本来のCodeIgniterのエラー画面になってくれない場合の対処方法です。
- 2017.09.25
- フレームワーク
- Codeigniter
PHPでサイトを作る時は、大抵はCodeIgniterで作るのですが、毎回毎回、サーバーにCodeIgniterのファイルをアップロードするのが面倒だったので、インスーラーを作ってみました。
WordPressでSSL化をする際に、個別の記事内に記述された画像URLのリンクを強制的にSSL・HTTPSに対応させる方法を調べてみました。
- 2017.09.13
- フレームワーク
- Codeigniter
CodeIgniterをプレフィックス付きDBで運用している際に、セッションDBの設定方法が微妙にわかりずらかったのでまとめました。
- 2017.09.08
- Docker
Dockerコマンドを実行するたびに毎回sudoをつけるのがかなり面倒だったので、sudoなしでもDockerコマンドが使えるようにします。
- 2017.09.08
- Docker
Dockerで立てたphpMyadminサーバーで、8Mほどのファイルをインポートしようとしたところ「413 Request Entity Too Large」と出てインポートが出来なかったので対処方法を調べてみました。
- 2017.09.08
- メモ
Docker SwarmクラスタのマーネージャーnodeのTokenを確認する /c0d3man/posts/k57yrn64kcte2ma5vj2y Nodeの昇格(Manger)・降格(Worker)
- 2017.09.08
- Docker
- Docker Swarm, クラスタ
Docker Swarmクラスタを構築したんだけど、マーネージャーnodeのTokenを忘れてしまった!という時に、Tokenを確認するコマンドです。
Portainerは、コンテナやイメージ、レジストリの管理ができるサーバー上で動くWEBアプリです。今回は、nginx-proxyコンテナをフロントに置いて、独自ドメイン+SSLでPortainerを使ってみます。
- 2017.09.07
- ひとりごと
さくらVPSでVagrant & VirtualboxでCore OSを立ち上げようとしたらエラーになったので、解決策を探してみた。
- 2017.09.07
- Docker
- docker-compose
軽量なUbuntuのコンテナ向けバージョン・Core OS。dockerはデフォルトで入っているのですが、docker-composeが入っていないので、インストールしようとしたところ「Read-only」エラーになってエラー先に進めなかっ […]
さくらVPS 3コア・2GBでUnixbenchを取ってみました。リージョンは東京です。
- 2017.09.05
- クラウドサーバー
- Google Cloud Platform, Google Compute Engine, Unixbench, ベンチマーク
Google Cloud Platformの仮想サーバー・Google Compute Engineのfi-samllでUnixbenchを取ってみました。
- 2017.09.05
- クラウドサーバー サーバー
- Google Cloud Platform, Google Compute Engine, Unixbench, ベンチマーク
Google Cloud Platformの仮想サーバー・Google Compute EngineのAlways Free対象サーバーであるfi-microでUnixbenchを取ってみました。
ConoHa VPSの512MBプランで、Unixbenchを取ってみました。
- 2017.09.05
- MySQL
とあるECサイト案件の話。 商品の詳細情報を表示するページなのですが、開発中に書いたメモだと1クエリ0.006秒だったのものが、いつの間にか0.8秒とかでSLOWクエリに出てくるように。 開発中はテスト中でレコード件数が20万件くらいだった […]
- 2017.09.04
- ひとりごと
テストの大切さ 今週はいろいろなベンチマークを取りました。 普段何気なく使ってるサービスやプログラムでも、どこが遅いのか、ボトルネックになっているのかなどを知る意味で、ベンチマークやテストは大事だなと痛感しました。 サーバーと費用対効果につ […]
- 2017.09.04
- フレームワーク
- Codeigniter
CodeIgniterの接続先DBサーバーをConoHaのDBサーバーにしたところ、下記のmax_user_connectionsが出たので、対策を調べてみました。
- 2017.09.04
- フレームワーク
- Codeigniter, KUSANAGI, docker
WordPressを高速化してくれるKUSANAGIですが、WordPress以外でもPHPプログラムなら高速化が可能という話を聞いたので、メインで使用しているPHPフレームワーク・CodeIgniterでどれくらいの速度が出るのかをテスト […]