bz0のにっき

quick and dirty prototype

kintone API アプリの自動生成

kintoneAPIのライブラリを最近作っているのですが
テストで、アプリの作成やフォームも自動で作れると
楽だなと思ったので、Curlコマンドでの生成方法を調べてました。


gist6da681361d97d6a8a79b194687fc73b1

knife-soloのインストール

vagrantの仮想環境が、ネットワーク設定をいじってたら壊れたので
新しく作ったのですが、軽い気持ちでknife-soloでサーバ自動構築しようと考えて
knife-soloインストールしようとしたら、嵌りました。。。

下記作業メモです。

環境

CentOS 6.5

インストール後
Ruby 2.3.3
gem 2.6.12
knife-solo (0.7.0.pre)

chefのインストー

# curl -L http://www.opscode.com/chef/install.sh | sudo bash

knifeの初期設定

# knife configure

rubygemをインストー

# yum install gcc git rubygems ruby-devel

通常インストールされるruby1.8.7だとknife-soloがインストールできない為、rubyを2.3.3にアップグレードします。
その為に、rubyのバージョンを簡単に切り替えられるrbenvをインストールします。

下記を参考にしました。
http://www.task-notes.com/entry/20150624/1435114800

# git clone git://github.com/sstephenson/rbenv.git /usr/local/src/rbenv

# echo 'export RBENV_ROOT="/usr/local/src/rbenv"' >> /etc/profile.d/rbenv.sh

# echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> /etc/profile.d/rbenv.sh

# echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh

# source /etc/profile.d/rbenv.sh
# rbenv -v
rbenv 1.1.0-7-g755c820

「ohai」が2.3以上でないとエラーになる為下記2.3をインストールする

# rbenv install 2.3.4

# rbenv global 2.3.4

# ruby -v
ruby 2.3.4p301 (2017-03-30 revision 58214) [x86_64-linux]

# gem update --system
# gem -v
2.6.12

# gem install bundler


knife-soloをインスト―ル

# gem install knife-solo --pre

# knife -v
Chef: 13.1.31

# gem list | grep knife-solo
knife-solo (0.7.0.pre)

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/

仕事

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