ドメインが変わったときのGitlabの設定変更
使ってたドメインの1個が先日失効したのだけれどまあ特に困らんやろと思って更新しなかったのだけれどそれはgitlabで使ってたドメインでgitlabがVPS上で孤立してしまったので別のドメインに変えましたよって話。
UbuntuにGitLabをインストール - tech.log
導入時の流れをブログに残しておいて本当によかった。 記事を読めば手順はわかるんだけど、一応やったことをメモしておく。
gitlab.yml <- ドメインの書き換え(2個gitlab.ymlあった)
sudo /etc/init.d/gitlab restart <- gitlab再起動
/etc/nginx/conf.d/gitlab.conf <- ドメインの書き換え
sudo nginx -s stop
sudo nginx <- Nginx再起動
これでドメイン変わった。生き返った。
ローカルにある個々のリポジトリのリモートも変えなきゃいけないけどそれは適宜やります
Macのスクリーンショットのファイル名、保存先変更
OSX 10.8.5にて確認
保存先の変更
$ defaults write com.apple.screencapture location /path/to/dir
ファイル名の変更
$ defaults write com.apple.screencapture name "prefix"
※ ファイル名は、指定した文字列+日付時刻 になる
反映させるために
$ sudo killall SystemUIServer
僕は
$ defaults write com.apple.screencapture location ~/Dropbox/screenshots $ defaults write com.apple.screencapture name ""
にしました。名前は頭に「スクリーンショット」とか付けられても邪魔なだけなので日付だけに。
見やすくてgood
Cookie Clickerクリックするのだるい人用javascript
URL欄に
javascript:var timerId = setInterval(function(){document.getElementById("bigCookie").click();Game.goldenCookie.spawn();Game.goldenCookie.click();},1);
をコピペ。 楽しい
jsあまり詳しくないのでもっと早いやり方あったら教えて下さい
UbuntuにGitLabをインストール
UbuntuにGitLabをインスコ
Gitやりましょう
参考
Ubuntu 12.04.2 LTSにGitLab5.2をインストール
Ubuntu 12.04 に GitLab 5.2 と Redmine 2.3 を構築
インストール
まんま参考URLに則ってやってみる
- パッケージを最新に更新
$ sudo apt-get update $ sudo apt-get upgrade
- 依存パッケージをインストール
$ sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev postfix
- Ruby 1.9系をインストール
$ sudo apt-get install ruby1.9.1 ... $ ruby -v ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
1.9.1なの?1.9.3なの?
- Gitユーザを追加
$ sudo adduser --disabled-login --gecos 'GitLab' git
ちなみに --gecos
はそのユーザの本名のフィールドらしい
ここからは作ったgit用アカウントで作業する
$ sudo su git $ cd
- gitlab-shellをインストール
$ git clone https://github.com/gitlabhq/gitlab-shell.git $ cd $ cd gitlab-shell/ $ git checkout -b v1.4.0 v1.4.0 Switched to a new branch 'v1.4.0' $ cp config.yml.example config.yml $ vim config.yml // <- ドメインを変更 $ ./bin/install
- gitlabをインストール
$ git clone https://github.com/gitlabhq/gitlabhq.git gitlab $ git checkout -b v5.2.1 v5.2.1 $ cp config/gitlab.yml{.example,} // <- この書き方初めて知った $ vim config/gitlab.yml // <- ドメイン変更 $ chown -R git log/ $ chown -R git tmp/ $ mkdir tmp/pids/ $ mkdir tmp/sockets/ $ mkdir public/uploads/ $ chmod -R u+rwX log/ $ chmod -R u+rwX tmp/ $ chmod -R u+rwX public/uploads/ $ cp config/puma.rb{.example,} $ git config --global user.name 'GitLab' $ git config --global user.email 'gitlab@localhost'
- MySQLの設定
$ cp config/database.yml{.mysql,} $ mysql -u root -p
mysql> create user 'gitlab'@'localhost' identified by '********'; mysql> create database if not exists `gitlabhq_production` default character set `utf8` collate `utf8_unicode_ci`; mysql> grant select , lock tables , insert , update , delete , create , drop , index , alter on `gitlabhq_production`.* to 'gitlab'@'localhost'; mysql> exit;
そしてdatabase.ymlに追加したアカウント情報を書く
- 接続チェック
$ mysql -u gitlab -p -D gitlabhq_production
- gemから必要なものをインストール
$ sudo gem install charlock_holmes --version '0.6.9.4' Building native extensions. This could take a while... ERROR: Error installing charlock_holmes: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9.1 extconf.rb /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError) from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' from extconf.rb:1:in `<main>' Gem files will remain installed in /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4 for inspection. Results logged to /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4/ext/charlock_holmes/gem_make.out
んw
mkmfってruby-devに入ってるらしい
$ sudo apt-get install ruby-dev
$ sudo gem install charlock_holmes --version '0.6.9.4' Building native extensions. This could take a while... ERROR: Error installing charlock_holmes: ERROR: Failed to build gem native extension. /usr/bin/ruby1.9.1 extconf.rb /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError) from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require' from extconf.rb:1:in `<main>' Gem files will remain installed in /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4 for inspection. Results logged to /var/lib/gems/1.9.1/gems/charlock_holmes-0.6.9.4/ext/charlock_holmes/gem_make.out
んんw
ruby1.9.1-devらしいです
$ sudo apt-get install ruby1.9.1-dev
$ sudo gem install charlock_holmes --version '0.6.9.4' Building native extensions. This could take a while... Successfully installed charlock_holmes-0.6.9.4 1 gem installed
入った。 次でまたひっかかる。
$ sudo bundle install --deployment --without development test postgres
mysql2のインストールでこけている。ググった結果
$ sudo apt-get install libmysqld-dev
$ sudo gem install mysql2 -v '0.3.11' Building native extensions. This could take a while... Successfully installed mysql2-0.3.11 1 gem installed
mysql2入った。
改めて。
$ sudo bundle install --deployment --without development test postgres
通った。
$ sudo bundle exec rake gitlab:setup RAILS_ENV=production ... Administrator account created: login.........admin@local.host password......5iveL!fe
- 起動スクリプトの設置
$ sudo cp lib/support/init.d/gitlab /etc/init.d/gitlab $ sudo chmod +x /etc/init.d/gitlab $ sudo update-rc.d gitlab defaults 21
- 起動
$ sudo /etc/init.d/gitlab start
起動は出来たみたい。
上の方の設定ファイルでgit.0q0.bizに設定してあったからブラウザからアクセスしてみるもそんなドメイン見つからんてChromeに怒られてしまった。
3分くらい悩んでから、サブドメインの設定してないことに気づいてお名前.comにて設定をした。
だいぶ待っても反映されなかったので一旦就寝。
翌日。 ブラウザでアクセスすると、"Welcome to nginx!"の表示。
gitlab/lib/support/nginx/gitlabを/etc/nginx/conf.d/gitlabにコピーしたけど、nginx.confでは.confのついたファイルを読み込む設定だったので読み込まれていなかった。
$ sudo mv /etc/nginx/conf.d/gitlab /etc/nginx/conf.d/gitlab.conf
これでアクセスすると502エラーが出たけど、gitlabが起動してないだけだったので起動したら繋がった。
gitlabのAdministratorの初期アカウントは
admin@local.host 5iveL!fe
とりあえずパスワードだけ長めに変更。
ユーザー追加は右上の"Admin area"から"New user"。
いろいろつっかかりまくったのでメモ。
コカコーラ バニラ 飲んでみたよ
冷凍プリンしたくてファミマに行ったら見つけたので買ってみた
コカコーラバニラとかいうのを買った pic.twitter.com/AZtnwGDYrX
— ひらやみー (@hirayami) August 3, 2013
なるほどバニラの香り pic.twitter.com/ldG3DKzaM4
— ひらやみー (@hirayami) August 3, 2013
半分ほど注いだ pic.twitter.com/Kqp6tosLFE
— ひらやみー (@hirayami) August 3, 2013
なるほど pic.twitter.com/4WJv4zndug
— ひらやみー (@hirayami) August 3, 2013
なるほどね pic.twitter.com/WmmFrCWw8C
— ひらやみー (@hirayami) August 3, 2013
なるほどなあ pic.twitter.com/3cv44FD6KB
— ひらやみー (@hirayami) August 3, 2013
何年か前にもバニラなコカコーラって売ってた気がするけど気のせいかな pic.twitter.com/a7FAI7jfpS
— ひらやみー (@hirayami) August 3, 2013
※ 10年前の商品の復刻版みたいですね。9歳の僕は飲まなかったようです。
味は、きっちゃてんにあるコーラフロートみたいなバニラ〜バニラ〜みたいなまったりしたのをイメージしてたけど、コーラにバニラの香りを足した感じだった。舌触りとかはいつものコーラのまま。 pic.twitter.com/wKPClNY5dW
— ひらやみー (@hirayami) August 3, 2013
旨いか不味いかでいうと旨い。おいしいけどコーラフロート飲みたい。 pic.twitter.com/19ZV7Oq9H5
— ひらやみー (@hirayami) August 3, 2013
最近炭酸強いのがあまり得意でなくなってきたんだけど、これは普通のコーラよりは炭酸が弱くて飲み安いきがする pic.twitter.com/JIWq1hdplg
— ひらやみー (@hirayami) August 3, 2013
ありか無しかで言うと、個人的にはありでした。
JavaScriptでリッチっぽいグラフ書きたいから書いた
highcharts.js
公式のデモとかドキュメントを参考に簡単なラインチャートを作ってみます。
まずはhead内に。DLして配置しなくても使わせてくれるからナイス。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script> <script src="http://code.highcharts.com/highcharts.js"></script>
次にグラフを置きたいところにdivを置いておく。
<div id="linechart" style="width:500px ; height:500px"></div>
そして、jQuery。
jQueryよくわかんないけど、とりあえず書いてみます。 データは適当です。
$(function() { $('#linechart').highcharts({ chart: { type: 'line' }, title: { text: 'Highcharts Demo' }, subtitle: { text: 'Subtitle' }, xAxis: { }, yAxis: { title: { text: "Number of View" } }, series: [ { name: '2013', data: [ [0,4], [1,5], [2,9], [3,2], [4,3], [5,7], [6,11], [7,6], [8,10], [9,9], [10,12], ] }, { name: '2012', data: [ [0,2], [1.4,8], [2.5,6], [3.2,5], [4.6,5], [5.4,8], [6.1,10], [7.7,9], [8.6,11], [9.1,6], [10.4,9], ] }, ] }) });
ブラウザから見た結果(画像クリックでHTMLページに移動します)
アニメーションもしてくれるので難しいコードを書かずともリッチっぽい図やグラフを使えて捗る。
とりあえずラインチャートだけ使いたかったから簡単にまとめました。
Twitter API 1.0の廃止でNet::Twitter::Liteが使えなくなりました
ずっと前から1.0止めるよ止めるよって言われてたけど結局ずるずる対応を先延ばしにした結果、ついに先日の1.0廃止に伴って動かしてたbotなどが一斉に止まってしまったので対応しました。
とは言っても、既にNet::Twitter::LiteのAPI 1.1対応版がCPANにあるので、インストールしてプログラムを少し書き換えるだけ。
Net::Twitter::Lite - search.cpan.org によると
You probably want Net::Twitter::Lite::WithAPIv1_1 which has support for Twitter API v1.1. If you're using a service with an API compatible with Twitter's deprecated API v1, then you're in the right place.
つまり「API1.0を使ってるなら、1.1に対応したNet::Twitter::Lite::WithAPI1_1を使ってね」ということらしい。
ちなみにbotが動かなくなってからずっと、ツイート送信に対して410エラーが返されていた。
Wikipediaによると、ステータスコード410 Goneとは、
消滅した。ファイルは恒久的に移動した。どこに行ったかもわからない。 404 Not Foundと似ているが、こちらは二度と復活しない場合に示される。
Goneつまりもう去ってしまってここには戻らないということ。
どうでもいいけど、410 Goneって字面でなんとなく心がザワザワして不安になる感じ分かる人はいらっしゃるだろうか。