茶トラ猫エンジニア

フリーランスとして働く、先が見えないエンジニアのメモ帳

ツール

MacでRedisクライアントを使用してDockerのRedisサーバへ接続

ローカルで Redis サーバを利用したい用途があったので、Docker で Redis サーバを起動し、Mac のターミナルから Redis クライアントで操作できるようにしてみました。 Redisクライアント Mac の場合は brew でインストールします。 $ brew install redis バ…

CircleCIでGitのソースを自動ビルドして継続的インテグレーション

最近、ビルドを伴うプログラム言語で開発しています。 ソースは GitHub で管理していますが、まだリリース前ということもあり稀にビルドが通らないソースコードがプッシュされることも。 そこで、CircleCI を使って GitHub と連携し、プルリクエストをマージ…

PostmanとNewmanを使って複数のAPIを連続して実行させる

これまでは、提供されている API を利用するケースが大半でしたが、最近は API を自分で作成する機会が増えてきました。 どちらの立場でも API のリクエストとレスポンスの確認作業は必要になりますが、Chrome の拡張機能である Postman にはここ何年もお世…

負荷テストツールLocust(イナゴ 175)のインストールと実行

先日、負荷テストの話題になって聞き慣れないツールの名前が出たので調べてみました。 負荷テストのツールと言えば、簡易的なもので「Apache Bench」、もう少し凝ったことをやろうとして「JMeter」というイメージでした。 今回は、Python のコードでシナリオ…

はてなブログにAdsenseの自動広告が表示されない場合の対処

以前は、はてなブログの無料プランを使っていたので、Adsense の自動広告が機能しないのかと思っていました。 記事も増えてきたこともあり、独自ドメインを取得し有料プランで自動広告の掲載に踏み切りました。 後から分かったことですが、無料プランのはて…

Adsenseの自動広告で特定のページだけ広告を非表示にする

Adsense の自動広告はすごく便利なのですが、狙っている ASP の広告を掲載しているページでは邪魔になります。 そこで、特定のページだけ Adsense が表示されないように設定してみました。 除外したいページが大量にある場合は大変ですが、数が少なければ作…

chrome63から.devドメインに強制HSTSでアクセスができなくなった

社内で閉じた環境で開発をする場合、ローカルに Vagrant などで仮想環境を用意したり、開発用のサーバを用意することがあると思います。 その際、IP アドレスや hosts ファイルで名前解決させて仮のドメインでアクセスさせることが多いと思います。 いつもは…

EC2にJenkins2.88-1.1を入れたら8080番ポートで起動しない

何気にアップデートの多い Jenkins ですが、またまた起動してこない問題に遭遇しました。 Jenkinsのエラー ログを確認して渋々ダウングレードするハメに Jenkinsのエラー nginx でリバースプロキシしているのですが、502 Bad Gateway で裏側に通信ができてい…

GoogleMapのAPIキーの認証情報にリファラURL設定

昔は API キーを指定することで、JavaScript で GoogleMap が表示できていましたが、何年か前に、そのキーに対して認証情報の追加が推奨されました。 新規で発行する場合は必須になっているかもしれませんが・・・。 一番簡単なのは、地図を表示するのは JS …

WindowsUpdateでVirtualBox(vagrant)が起動しなくなった時に疑うこと

最近 Windows10 の大きなアップデートが何度かありましたが、その影響で Vagrant が起動しなくなってしまいました。 正しくは、Vagrant というか VirtualBox の方ですね。 その際は Vagrant の利用用途が限られていたので困らなかったのですが、やはり Linux…

Jenkins2.54.1にアップデートしたら503エラー

何気なく yum update したら、いつも通り Jenkins のバージョンアップ。アップデート頻繁ですよねぇ。っと、いざ Jenkins にアクセスしたら 503 エラーになっているではありませんか。 Problem accessing /. Reason: Service Unavailable しかもエラー内容が…

BitBucketやGitHubで「空白」「タブ」「改行」の差分を無視する

コードレビューをしていると、稀にエディタの設定の違いで空白行(空白行とスペース4文字などの行)や行末のホワイトスペースなどの差分が表示され面倒なことがあります。 本来ならチーム内で最低限のコーディング規約は統一しておいて、プルリクの時点でその…

LINE NotifyでグループLINEに定期通知を送信

運動不足解消のために、とあるスポーツクラブのレッスンを受けに行っていますが、空き状況の確認が面倒なので、それを自動で通知するようにしています。 ただ、これまでは空き状況結果をメールで通知していたので、LINE へ通知したいなっと考えていました。 …

SourceTreeで「Win32 error 487」が出る場合の対処法

Windows10 の WindowsUpdate が行われた翌日、PC を起動してみると SourceTree から git を利用する際に以下のエラーがダイアログに表示されました。 これにより、リモートのリポジトリへのプッシュやプル、チェックアウトなどができなくなりました。 Win32 …

Jenkins2.0を導入したらUnsupportedOperationExceptionが発生

Jenkins2.0 が登場と言うことで、さすがにメジャーバージョンアップは早いかなっと思っていましたが、yum update で確認するとパッケージが用意されている感じだったので思い切ってバージョンアップしてみました。 実際に Jenkins の公式でも war ファイルの…

Jenkinsのプラグインを含めたバックアップ方法

Jenkins を立ててプロジェクトのデプロイやソースコードチェックなどが便利になりましたが、Jenkins のタスクやビルド時に定義したシェル、そして外部のサイトなどと連動するプラグインなど、後から設定したもののバックアップが気になります。 特に権限管理…

NiktoやKaliLinuxで簡易的な脆弱性診断を試してみる

nginx の設定項目を見直していたのですが、診断ツールがあると便利だなっと思い探してみると、Nikto というツールに行き着きました。 今回は Nikto を紹介します。 Niktoのダウンロード Niktoのインストールと実行 Niktoのヘルプを確認する Basic認証を通過…

GUIのgitクライアントGitKrakenはSourceTreeを超えるか

仕事中にふと紹介された GUI の git クライアント。 コマンドライン派の人には無縁な話題ですが、私のように何年も前から SourceTree などの GUI のツールを使っている人で、現状のツールに不満感がある人は一度試してみるのもいいかもしれません。 名前負け…

Jenkinsのビルドパラメータにgitのブランチ一覧をプルダウンで表示する

Jenkins でデプロイタスクを実行する際に、git のブランチ名を入力できるようにしていましたが、どうせならプルダウンで選択できるようにした方がいいかなっと思い、プラグインを使って実現しました。 今回はその方法を紹介します。 プラグインを活用する ブ…

ImageMagickで画像加工の基本を試す

これまで、リサイズやトリミングなど、PHP から GD や ImageMagick を使って画像加工をしてきましたが、ImageMagick ではもっと幅広い加工ができるということで他のパターンを試してみました。 ImageMagick については、サイボウズのブログで話題になった通…

Redisでキーをワイルドカード検索して一括削除したい

Redis を使った運用をしていて、場合によっては特定のキー削除をするケースに遭遇するかもしれません。 例えば、テスト開発中に無駄なキーをたくさん作ってしまったとか、有効期限(TTL)を多めに設定してしまったので削除したいとか、いろいろなパターンがあ…

CentOSでRedisサーバを使う

冗長化した Web サーバなどで、セッションの管理や、セッションや特定のユーザーに紐付く一時データを管理するのに memcache を使う場面は多いと思います。 その memcache の中でも主流なのが memcached ですが、最近では redis の言葉をよく聞くようになり…

さくらインターネットでFTPの接続元IP制限

さくらインターネットで商用のサービスを運用しているサイトも少なくないですが、さくらインターネットのレンタルサーバやマネージドサーバは FTP のポートが開放されているので、デフォルトの設定では危険を伴う可能性が高いです。 しかし .ftpaccess とい…

Wiresharkのコマンドライン版(tshark)

Windows のクライアントツールで有名な Wireshark のコマンドライン版について、IT 系のサイトで触れていたのでメモ。 Wireshark はパケットキャプチャソフトで、Windows 上の PC でネットワークの疎通確認などによく使います。 Windows のクライアントツー…

OutlookExpressの2GB問題でdbxが破損

先日、会社の人にメールの送受信ができなくなったので呼ばれました。 状況を見る限り、認証に失敗しているわけでもなく、メールサーバも問題がない感じ。 OutlookExpress のエラーメッセージは「不明なエラー」となっているので状況がわかりにくいです。 受…

FFFTPで接続(セッション)を維持する方法

社内 LAN などイントラネットに閉じた環境では、サーバへのファイル転送に FTP を使うこともしばしばあります。 もちろん、作業効率を考えてシェルターミナルから ftp コマンドを使うのではなく、GUI のアプリケーションで作業を行います。 FTPはまだまだ現…

よく使う括弧の読み方(11種類)

プログラムや設定ファイル、ドキュメント作成など幅広い分野で使われる括弧(かっこ)。 読み方が統一されていて名前が通じるものもありますが、何と読んでいいのかわからない括弧もあります。 そこで、主要な括弧の読み方をまとめてみました。 何種類もの読み…

Windowsのコマンドプロンプトやシェルからwgetを実行してみる

Linux サーバなどで外部のサイトからファイルをダウンロード(httpやftp)する場合、wget を使う機会が多いですが、実は Windows でも wget を使うことができます。 OpenSSL にも対応していて、最新バージョンは 2008 年の 10 月に登場した wget 1.11.4 です。…

ImageMagickのconvertコマンドで画像変換

画像フォーマットの変換やリサイズは Windows 上の GUI のツールでやることが多かったのですが、ImageMagick を使えば Linux 上のコマンドライン(CUI)で簡単に変換ができます。 例えば jpg の画像サイズの変更、jpg から gif へのフォーマット変換、複数の画…

ftpコマンドで使えるオプション(chmod)

このセキュリティの厳しい時代に ftp って言うとブーイングを受けるかもしれませんが、今でも多くの場所で使われています。 私が知る限りでは、ローカルの PC で作ったプログラムを一時的にイントラネット内のサーバに乗せて動作確認する場合にその光景を見…