読者です 読者をやめる 読者になる 読者になる

bz0のにっき

quick and dirty prototype

Jenkinsインストール - ジョブ実行までやってみる

自分の個人プロジェクトのCI環境を作ろうと思いJenkinsを試しています。

インストール・ジョブを試しに実行してみるところまでやってみました。

Jenkinsのインスト―ル
http://qiita.com/UmedaTakefumi/items/4a6f688a61e169759e44

# sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
# sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
# yum install jenkins
# yum install wget java-1.7.0-openjdk
# service jenkins start
# chkconfig jenkins on

iptablesでポートを開放(デフォルト8080番利用)

# vi /etc/sysconfig/iptables
service iptables restart

Unlock Jenkinsと出てきたら、下記にパスワードがあるので
コピーして、パスワードを貼り付け

# cat /var/lib/jenkins/secrets/initialAdminPassword

http://ドメイン:8080でログインして
プラグインのインストール / ユーザ登録を行う
http://symfoware.blog68.fc2.com/blog-entry-1899.html

ジョブを試しに実行してみるところまでやってみました。
http://qiita.com/nyasba/items/eea459e97a56c5d43fce

twitterのoauthログイン

PHPで、twitterによるoauthログインを試しに実装してみた。
【PHP】新TwitterOAuthでログイン機能を実装する - Qiita

上記の通りに実装すれば簡単にできますが「abraham/twitteroauth」を
composerを使ってインストールした場合、requireするファイルを下記に書き換えます。

require_once 'vendor/autoload.php';

TwitterOAuth PHP Library for the Twitter REST API

Node.jsインストール~簡易チャット作成まで

Node.js面白そうだったので、試しでやってみる。

環境

サーバ:CentOS6.5
クライアント:Windows10

Nodeインストー

下記を参考にしました。

Node.js を5分で大雑把に理解する
http://qiita.com/hshimo/items/1ecb7ed1b567aacbe559

nvmでnode.jsをインストールすることで、バージョンを切り替え可能
http://arfyasu.hatenablog.com/entry/2016/01/26/212543

node 6.10を入れてみた。

# nvm install 6.10
# node -v
v6.10.3

Hello World

とりあえず、コピペで「Hello World」できた。
http://arfyasu.hatenablog.com/entry/2016/01/26/212543

iptablesで、ポートを開けます。
 いちいちぽート開けるのがメンドクサイ。。。

簡易チャット

socket.ioをインストー

# npm install socket.io

http://engineer.recruit-lifestyle.co.jp/techblog/2015-07-29-node4/

コピペして簡単なチャット作成まではできた。
リアルタイムで応答かえってくるの面白い。

f:id:bz0:20170517004905g:plain

rsyslogでMySQLにログを出力

MySQLにログを出力してSQLで検索できるようにした方が、ファイルを検索して
調べるより楽かなと思いやってみました。

環境

CentOS 6.5
rsyslog 5.8

rsyslogのMySQLへの登録

・rsyslogはログファイルを管理する
・設定ファイルは、/etc/rsyslog.conf

MySQLへのログ出力の設定については、下記を参考にしました。
SIOS "OSSよろず" ブログ出張所: rsyslog のログを DB で管理する ( MySQL / PostgreSQL )

週報 20170507 - 20170512

twitterAPIを利用した個人開発

 ・データ収集の仕組みはほぼできたので、UIを作っていました。

たのしいインフラの歩き方の本を読んでいました。

Amazon CAPTCHA

 ・派生して、データのバックアップ / リストアについて、再度考え直したいと思いました。

 ・これまで使い慣れた「さくら」のVPSクラウドばかり利用してましたが
  AWSも使ってみたいと思います。

  下記読んでAWS=怖いイメージがあって敬遠してたのも正直あります。
  http://qiita.com/mochizukikotaro/items/a0e98ff0063a77e7b694


 ・外道父さんのブログも参考になりました。

  ここで挙げられている講義や課題のリストを自主学習のリストとして
  活用させてもらおうと思います。
  http://blog.father.gedow.net/2015/05/11/gedow-style-training-method/

仕事

 サーバのファイルシステムの障害が起きて急きょサーバ移転をやりました。
 トラブルが起きると、キツイですがその分学びも多いですね。

Let's Encryptでhttps化する

無料でhttps化できるので試してみました。

環境

CentOS 6.5

certbotインストール

https://certbot.eff.org/#centos6-apache
https://www.websec-room.com/2016/10/01/2698

やってみると、ウィザードは立ち上がらずに
色々聞かれました。(連絡先のメルアドやドメイン名等)

証明書自動更新(サーバ証明書の更新は3か月ごと)

https://github.com/certbot/certbot/issues/2823
https://letsencrypt.jp/usage/centos6-error.html

CentOS6だと、python2.6がデフォルトで入っているので
python2.7を、今入っている2.6に影響させることなくインストールします。

# yum install centos-release-scl
# yum install python27 python27-python-tools

dry-runで試しに実行して正常動作を確認する

# scl enable python27 bash
# /opt/letsencrypt/certbot-auto renew --dry-run

teratermで上記実行してみるとうまくいったのですが
cron登録して実行すると、virtualenvがないエラーになってしまったので
SCLが効いてないなと思った為、下記のようにCRON登録するとうまくいきました。
http://hideharaaws.hatenablog.com/entry/2014/11/29/223040

scl enable python27 "/opt/letsencrypt/certbot-auto renew"

2017/04/26

個人開発

twiiterいいね数ランキング

API経由で取得したツイート情報などがだいぶ溜まってきたので、ツイートを出力できるように
statuses/oembedで出力用HTMLをDBに保存するPGMを書きました。

現在、cronで実行させていて処理待ち状態。


リファクタは、やっていると際限がなく終わらなかったので
とりあえず一旦打ち切りました。

boostNote

boostNoteを試しに使ってみています。
evernoteだと、マークダウン形式で入力できない・コード片が
見やすく表示できないといった点が不満で、boostNoteだとその点解消できるのでいいなと思っています。

boostnote.io