Mac OS XでJAVA_HOMEを調べる

Mac でJAVA_HOMEの場所を調べる方法のメモ。 $ /usr/libexec/java_home /Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home .zshrcや.basrcに設定しておくといいかも # .zshrc or .basrc export JAVA_HOME=`/usr/libexec/java_home`

僕の .vimrc

vim

.vimrc プラグイン管理 プラグイン管理には NeoBundle を使っています。 https://github.com/Shougo/neobundle.vim カラースキーマ molokai https://github.com/tomasr/molokai これ一択ですね! こんな感じ。 プラグイン Align http://www.vim.org/scripts/…

bundlerで管理しているRailsをアップデートする

Gemfile内のrailsのversionをあげる # Gemfile gem 'rails', 'x.x.x' Railsのアップデート $ bundle update rails 設定ファイルを最新版にする $ bundle exec rake rails:update

漢字をひらがなやローマ字に変換することができる KAKASI の導入方法

KAKASIを使えば漢字が入った文をひらがな文やローマ字文に変換することできます。 今回試した環境 Mac OS X 10.9.4 CentOS 5.10, 6.5 KAKASIのダウンロード http://kakasi.namazu.org/stable/ 最新版をダウンロードする。2014-7-17時点では 2.3.6。 KAKASIの…

【Nginx】「[emerg]: could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32」というエラーが出た場合の対処法

Nginxを起動しようとすると以下のエラーが出た。 $ sudo /etc/init.d/nginx start [emerg]: could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32 configuration file /etc/nginx/nginx.conf test failed 長いサ…

【Linux】「sudo: service: command not found」というエラーが出た場合の対処法

$ sudo service mysqld start sudo: service: command not found というエラーが出た。 CentOS 5.xだとsudo時にsbinにパスが通ってないよう。 パスを追加する方法は2つあるので好きな方で設定してください。 .bash_profile にパスを追加する方法 以下行を追…

【Linux】「Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist」が出た場合の対処法

CentOS 5.xでMySQLをインストールして起動しようとしたら失敗した。 $ sudo service mysqld start MySQL Daemon failed to start. mysqld を起動中: [失敗] ログを見てみるとmy.confの設定が読めてないみたい? # /var/log/mysqld.log [ERROR] Fatal error: …

【Linux】EPEL, Remi, RPMforgeリポジトリを追加する方法

CentOSの標準リポジトリで提供されていないパッケージをインストールするためサードパーティのEPEL, Remi, RPMforgeリポジトリを追加します。 これらを追加することで最新のPHPやMySQLなどをインストールすることができるようになります。 CentOSのバージョ…

【Linux】 CentOS でサーバー構築

前提条件 SSH がインストールされていること rootユーザーでログインする [local]$ ssh root@[ホスト名] rootパスワードを変更する 初期パスワードを変更する # passwd 一般ユーザーを作成する $ useradd [ユーザー名] $ passwd [ユーザー名] $ usermod -G w…

【Linux】 CentOSにGitolite を導入する

Gitoliteはアクセス制御やユーザー管理の仕組みを提供してくれます。 今回はCentOSにGitoliteを導入してみたいと思います。 他のディストリビューションでもだいたい同じようにできると思います。 前提条件 SSHの設定が終わっていること 参考:CentOS でWeb…

Nginx + Unicorn で Redmine をインストールする

Redmineのバージョンは2.5です。 Ruby, MySQL, Nginxのインストール http://kzy52.com/entry/2013/05/03/022925 Rubyのバージョンは2.0にすること ImageMagickをインストールする $ sudo yum -y install ImageMagick ImageMagick-devel ソースコードを取得す…

Macを買ったら絶対に入れておきたいおすすめアプリ

Mac

0xED http://www.suavetech.com/0xed/0xed.html バイナリエディタ。 1Password 1PasswordAgileBits Inc.仕事効率化¥5,000 パスワード管理。 Alfred AlfredRunning with Crayons Ltd仕事効率化無料 アプリケーションランチャー。 これでアプリの起動が快適に…

nodebrew を使って Node.js をインストールする

Homebrew で Node.js をインストールしていたのでまずアンインストールする。 入っていなければ「nodebrew のインストール」からでOK。 npm のアンインストール $ sudo npm uninstall npm -g $ rm -rf /usr/local/lib/node_modules Node.js のアンインストー…

スロークエリのログを出力する

MySQL で遅いクエリのログを出力する方法です。 設定 # /etc/my.cnf [mysqld] slow_query_log=ON slow_query_log_file=/var/log/mysql/slow_query.log # ログの場所 long_query_time=0 # 0秒以上かかるクエリを対象にする(0だとすべてのクエリが出力される) …

FuelPHP の開発環境を構築する

PHP

クイックインストーラをインストールする $ curl get.fuelphp.com/oil | sh プロジェクトを作成する 今回は fuel-sample というプロジェクトを作成します。 $ oil create fuel-sample こんなエラーが Error - date_default_timezone_get(): It is not safe t…

www 付きの URL をリダイレクトさせる方法

Apache # /etc/httpd/conf/httpd.conf <VirtualHost *:80> ServerName www.example.com Redirect permanent / http://example.com/ </VirtualHost> <VirtualHost *:80> ServerName example.com </VirtualHost> 恒久的なリダイレクトの場合 permanent を指定すると HTTPステータスコード301 を返してリダイレクトされます。 一…

Nginx で 「413 Request Entity Too Large」 が出る場合

ファイルをアップロードしようとしたら 413 Request Entity Too Large というエラーが発生。 許容範囲外のデータがサーバーに送られた際に出るエラーのようなので client_max_body_size を定義して対応する。 # /etc/nginx/nginx.conf http { .... server { …

【Rails】staging 環境用の設定ファイルを追加する

staging に限らずデフォルトで用意されている環境(development, production, test) 以外の環境を用意する場合、 設定ファイルを単純にコピーしてもいいのだが、DRYじゃないので diaspora を参考に以下のようにしてみた。 # config/environments/staging.rb r…

VimでRubyリファレンスマニュアルを検索する

Rubyリファレンスマニュアルの導入は以下の記事を参考にしてください。 ローカルでRubyリファレンスマニュアルを読めるようにする # ~/.vimrc NeoBundle 'thinca/vim-ref' :NeoBundleInstall メソッド名の上で Shift + k を押せばリファレンスが表示される。

ローカルでRubyリファレンスマニュアルを読めるようにする

オフラインでもRubyリファレンスマニュアルを読めるようにローカルに環境を作っておく。 $ gem install refe2 $ gem install bitclust-dev $ rbenv rehash bitclust コマンドが使えるようになるのでこのコマンドでデータベースを作成する。 $ bitclust setup…

【Rails】asset pipelineのログを出力しないようにする

Railsはデフォルトだと以下の用に asset pipeline のログが出力されてしまう。 邪魔なので出力させないようにする。 Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2014-01-18 15:19:00 +0900 Started GET "/assets/jquery.ui.core.css?bo…

Dropbox Datastore APIへアプリを登録する手順

dropboxのapiを使う機会があったので登録する手順をまとめてみました。 ① DropboxのDeveloper サイトにアクセスする https://www.dropbox.com/developers/apps ② Create app ボタンをクリックする ③ What type of app do you want to create? Dropbox API ap…

【Rails】backup というgemを使いファイルやデータベースのバックアップをとる

backup という gem を使いファイルやデータベースのバックアップをとる手順を紹介したいと思います。 https://github.com/meskyanichi/backup https://github.com/meskyanichi/backup/wiki インストールする $ gem install backup $ rbenv rehash $ mkdir ~/…

MeCab と MeCab Ruby をインストールする

久しぶりに形態素解析エンジンを使う機会があったので MecabとRubyバインディングのMeCab Rubyのインストール手順をメモしておきます。 検証環境 Mac OS X CentOS MeCab のインストール $ wget http://mecab.googlecode.com/files/mecab-0.996.tar.gz $ tar …

【Rails】 RailsでBasic認証を設定する

Rails 側で設定する場合 # app/controllers/application_controller.rb class ApplicationController < ActionController::Base before_action :basic_authentication if Rails.env.production? private def basic_authentication authenticate_or_request_w…

【Rails】 FactoryGirlでCarrierWaveのイメージデータを作成する

FactoryGirlでCarrierWaveのイメージデータの作成方法についてメモしておく。 テスト用のデータ「spec/support/files/rails.png」 を配置する(場所はどこでもいい) # spec/factories/users.rb FactoryGirl.define do factory :user do sequence(:email) { |n…

【Rails】RailsでColorboxを使ってみた

Colorboxはモーダルを開いて画像を拡大表示したりすることができるjQueryのPluginです。 今回はColorbox用のgemを使わずに導入してみたいと思います。 1. 以下のページからcolorbox本体をダウンロードしてきます。 http://www.jacklmoore.com/colorbox/ 2. …

tmux の導入から使い方まで

いつもお世話になっているtmuxについて改めてまとめてみました。 ターミナル・マルチプレクサ 「tmux」では何ができるのか ・ターミナルの状態を維持しつつ、セッションの切断、再開ができる。 ・1つのターミナル上に複数のターミナルを表示できる。 とかと…

【Rails】Capistranoで「fatal: Could not parse object」エラー

いつも通り以下コマンドを実行したら こんなエラーが。 $ cap deploy ... fatal: Could not parse object 'ce37f2ad983e7d43f5b190c620945d0731e59d2f'. ... デプロイ先のサーバーに入って $ cd [デプロイ先のパス]/shared $ rm -rf cached-copy/ で解決。 s…

【Mac】Homebrewをupdateしたら「The following untracked working tree files would be overwritten by merge:」というエラーが出た

Mac

しばらくさわってなかったMac miniのHomebrewをupdateしようとしたら以下のようなエラーが出た。 $ brew update error: The following untracked working tree files would be overwritten by merge: Library/Formula/libarchive.rb Please move or remove t…

【Mac】 Homebrewを使ってNode.jsとCoffeeScriptをインストールする

CoffeeScript を使うには Node.jsの実行環境とnpmが必要になります。 まずはNode.js からインストール。 Node.jsのインストール $ brew install node npmのインストール npmはcurl経由でインストールします。 $ curl http://npmjs.org/install.sh | sh あら.…

【Rails】本番環境(WebサーバーはNginx)で font-awesome のアイコンが表示されない

Font Awesome を使うとWebページ上に簡単にアイコンを表示させることができる。 # Gemfile gem 'font-awesome-rails' $ bundle install # app/assets/application.css /* *= require font-awesome */ ビューで <h1><i class="icon-camera-retro"></i>&nbsp;Camera</h1> とかやるとアイコンが表示される…

【Rails】 settingslogic で改行を含む定数を管理する

導入方法 https://github.com/binarylogic/settingslogic settingslogic で定数を管理しているけど、改行ある時どうするんだっけ?となったので調べてみた。 YAMLについて知らなすぎだね。 改行を含む文字列を表現する # config/application.yml defaults: &…

【Rails】Authlogic + OmniAuth でソーシャル認証を実装する

Authlogicの導入は以下記事を参考にしてください。 【Rails】 Authlogicでユーザー認証機能 gem を追加 # Gemfile gem 'omniauth' gem 'omniauth-twitter' gem 'omniauth-facebook' 認証するには Twitter/Facebook Developers にアプリを登録して認証情報を…

【Meteor】 CoffeeScript で開発する

【Meteor】 はじめての Meteor Meteor ではパッケージを簡単にインストールすることができます。 今回はストレスなく開発を進めるために CoffeeScript を使えるようにします。 まずはインストール可能なパッケージを見てみましょう。 パッケージを確認する $…

【Meteor】 はじめての Meteor

JavaScript + HTML + CSSで Webアプリケーションを作ることができる、 Meteor を使ってみました。 Meteorの特徴 Node.jsをベースにしているのでクライアントとサーバのコードを一つの言語(JavaScript)で書くことができる インストールもデプロイもコマンド一…

【Linux】 CentOS に MongoDB をインストールする

[2015-05-13] 内容が古くなっていますので CentOS に MongoDB をインストールする を参照ください。 MongoDBのリポジトリを設定してインストールします。 リポジトリの追加 64ビットの場合 # /etc/yum.repos.d/10gen.repo [10gen] name=10gen Repository bas…

Mac OS XにMongoDBをインストールする

インストール $ brew install mongodb 起動する $ mongod 停止する Ctrl+c 自動起動するように設定する $ ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents $ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist こんなエラ…

【Rails】fields_for と accepts_nested_attributes_for

Railsでネストした関連先のテーブルもまとめて保存したい時に使うのが accepts_nested_attributes_forです。すごく便利。 Railsのソースコードを見ながら使い方をまとめてみました。 コンソールから色々試してみる 定義する class User < ActiveRecord::Base…

Twitter BootstrapでCSS Sticky Footer

CSS

CSSでフッターをブラウザの下部に固定する方法。 Twitter Bootstrap 2用です。 # html <body> <div id="wrap"> <div class="navbar navbar-fixed-top"> <div class="navbar-inner"> <div class="container"> <a class="brand" href="#">Sticky Footer</a> <div class="nav-collapse"> <ul class="nav"> <li><a href="#">メニュー1</a></li> <li></li></ul></div></div></div></div></div></body>

【Rails】 DBに楽観的ロックをかける

排他制御には「楽観的ロック」と「悲観的ロック」があります。ユーザーAとユーザーBがいた場合・楽観的ロック ユーザーA、ユーザーB共に編集画面を開くことができるが、ユーザーAが更新した場合ユーザーBの更新は失敗する。・悲観的ロック ユーザーAが編集画…

【Rails】 Authlogicでパスワードリマインダーを実装する

ユーザーがパスワードを忘れてしまった際にパスワードを再設定できる機能を実装してみます。パスワードリマインダーには色々な実装方法がありますが、 今回は登録されているメールアドレスにパスワード再設定用のURLを送信する方法で実装します。・Authlogic…

【Rails】 application.jsやapplication.css以外のファイルをプリコンパイル対象に設定したい場合

admin.jsとadmin.cssをプリコンパイル対象にする。 # config/environments/production.rb config.assets.precompile += %w( admin.js admin.css )$ bundle exec rake assets:precompile RAILS_ENV=productionこれでプリコンパイル対象に入るかと思っていたが…

【Rails】 state_machineを使って状態を管理する

https://github.com/pluginaweek/state_machine今回はstate_machineを使ってUserモデルに状態を管理する機能を追加します。 インストールする # Gemfile gem 'state_machine' $ bundle install 使い方 # app/models/user.rb class User < ActiveRecord::Base…

【vim】 僕の .vimrc

vim

移動しました。http://kzy52.com/entry/2014/07/22/000211

【Linux】 CentOSにGitolite を導入する

Git

【2014-06-20】書き直しました。http://kzy52.com/entry/2014/06/20/085203 GitoliteをつかってGitリポジトリを権限管理したいと思います。 前提条件 ・SSHの設定が終わっていること 「CentOS でWebサーバー構築」の記事を参考に Gitoliteをインストールする…

【Linux】 CentOS でWebサーバー構築

【2014-7-10】書き直しました。http://kzy52.com/entry/2014/07/10/063620 rootパスワードを変更する ・sshでログインし「passwd」コマンドでパスワードを変更する $ ssh root@[ホスト名] $ passwd 一般ユーザーを作成する $ useradd [ユーザー名] $ passwd …

Mac + Rails 環境構築メモ

Ruby のインストール ・rbenv, ruby-build, rbenv-gemset をインストールする $ brew install rbenv ruby-build rbenv-gemset・openssl, readline をインストールする $ brew install openssl $ brew install readline・パスを通すzsh の場合 # ~/.zshenv ex…

【Rails】 Authlogicでユーザー認証機能

ユーザー登録機能を作成する ・モデルを作成する $ rails g model User・マイグレーションファイルを修正する # db/migrate/20130125121017_create_users.rb class CreateUsers < ActiveRecord::Migration def change create_table :users do |t| t.string :…

Homebrew で Apache + MySQL + PHP の環境構築

Mac

Apache のインストール ・Apache が登録されている Fomula を追加する $ brew tap Homebrew/dupes・インストール $ brew install httpd・起動/停止 $ sudo apachectl start $ sudo apachectl stop MySQL のインストール ・インストール $ brew install mysq…