Heroku CLI接続後、Redmineをwindows10ローカル環境からトライ、途中で仮想マシンに方針変更。
「Redmine(bitnami)はさくらインターネットのスタンダードプランでは使えません。」、によりroot権限が使えない為、Redmineは管理者権限がないレンタル共有サーバーなどでは使えない事が確定しました。
今回に限らず、ケチると毎回root権限問題に出くわします。そろそろ学習したほうがいいですね、時間の無駄!VPS以上は常に基本ということですね。
今後、Redmineを検討される方はプラットフォーム選びにはご注意ください。
windows10ローカルにRuby on Rails環境を構築し、HerokuでRedmineを動かしてみようと再挑戦しましたが、ローカルにXAMPP的なRuby環境を構築する事が嫌になった為、今回も途中までです。windows10にてRedmine×Heroku、結構、難しいです。
嫌になった理由としては、「AWS上のHerokuのPaaS環境にRubyやrailsのバージョン、gem、その他、などをHeroku環境に合わせる事が重要」という事の「度合い」が大きい事が見えてきて、RubyInstaller for WindowsやRailsInstallerを使うとバージョンやパッケージの入替操作に不向きで、かなり時間が無駄になると感じた為です。
Rubyをインストール/アップデートするには?(Windows編)でRubyInstallerでRubyの各バージョンの共存についてのやり方は見つけました。
Rubyのバージョンやライブラリの切替管理については、Windowsのコマンドラインからrbenvを使いたいを参考にrbenvを使うといいみたいです。
注意点は、bundle install がこけるようになったです。bundle installはハマります。
Cygwinやその他パッケージをChocolateyで入れてしまい、ChocolateyのbugでChocolatey GUIでうまくバージョン管理出来ないなど、Windows向けに作られているパッケージ管理は、経験上、泥沼に陥る可能性が高いと考えています。
そのため、VMをVirtualbox/VagrantでHeroku環境に合わせて改めて構築することに変更しました。
VMイメージ選びでHeroku環境に近いものを探します。
windowsでHeroku初心者の方には、少し役に立つ内容だと思いますので過程を残しておく事にしました。
HerokuでWebアプリ開発を始めるなら知っておきたいこと(1) 無料のスペックにて、Heroku無料のスペック範囲は確認できます。
無料の場合、PostgreSQLで5MBまで、gitやgem関連のファイルを含まずに圧縮状態で容量100MB? or 200MB? まで(圧縮は自動で行われます)、Rubyのバージョンは1.8.6, 1.8.7, 1.9.2など色々な縛りがあります。
コマンド各種については、Heroku コマンド・設定 メモメモも参照ください。
手順
1.Heroku CLIの準備
Herokuでアカウントを作り、Heroku Command Line(CLI)のHeroku Toolbeltを手元のwindows10ローカルにインストールします。
Rubyコマンドプロンプトを使う為、windowsの場合、RubyInstaller for WindowsでRubyもインストールします。
一通り出来たら、herkuのバージョン確認コマンドでHerokuとRubyのバージョン確認が出来ればOKです。
//バージョン確認コマンド heroku --version
2.Herokuにログイン
ログインします。1.で作ったアカウントでログインできます。
※鍵認証設定が事前に必要な場合もあると思います。
//ログインコマンド heroku login //ログアウト heroku logout
ログイン後、プロンプトの表示が変わらずローカルのwindowsのままなので、リモートのHerokuにログインしていない様な感じがします。
HerokuのPaaSの特徴なのかよくわかりません。原因調査をしようとしましたが、VMに変えることを決めた為、放置です。
Cドライブ>ユーザー>ユーザー名>_netrc($HOME\_netrc) に、APIトークンが作られます。
※公開鍵操作コマンド(参考)
//Heroku に登録している公開鍵を削除 heroku keys:clear //Heroku に公開鍵を登録 heroku keys:add
公開鍵を登録すると、Herokuから確認メールが届きます。
公開鍵や秘密鍵をまだ作っていない場合、WindowsでSSHの鍵を作るなどを参考にしてください。
3.アプリを作る
app-redというアプリ(ディレクトリ)を作ります。
//redmというアプリを作る heroku apps:create app-red //これでもおそらくアプリ作られる heroku create app-red //参考:アプリ確認(アプリのGitのURLとWEBのURLも表示される) heroku apps:info app-red //参考:アプリ削除 heroku apps:destroy --app app-red
アプリを作るとHerokuの管理画面でも、アプリが出現して各種のコマンドの説明等、いろいろ操作出来ます。
4.Development Kit,bundlerをインストール
DEVELOPMENT KITも64bit版で2.0 and aboveをインストール、展開先はC:\devkitとしました。DevKitのインストールを参照ください。
参考:DevKit windows の場合の削除方法⇒Devkit削除。FC2に書いてあるとすげー不安になるけど、上記「Devkitのインストール」の完全に真逆手順として確認できた為、大丈夫だと思います。
今後、何かをインストールする時は、正しいと思われるアンインストール方法を事前に調べてからにしようかな。レジストリとか、ローカルをお手上げ状態にしない為には結構大事ですよね。
RubyGems更新。
//RubyGemsの更新 gem update --system //gem一覧 gem list
参考:gem削除(あえて言うほどでもないけど、わかりやすいと思います)⇒あえて言うほどではないけれどもGemを一括削除する方法
Bundlerインストール
//Bundlerのインストール gem install bundler //bundlerバージョン確認 bundle -v //bundleファイルを探す where bundle
5.railsインストール
//(Ruby on )Railsインストール gem install rails //指定バージョンをインストール gem install rails --version="5.0.0.1" //4.2.X系の最新バージョンをインストール gem install rails --version="~>4.2.7" //4.X系の最新バージョンをインストール gem install rails --version="~>4.0"
Vagrant/Virtualboxに変更を決定
冒頭の説明通り、ローカルにVagrant/Virtualboxで仮想マシンを作ることにしました。
Redmineインストールは疲弊します。かなりググって疲れました。
Heroku環境と合致するお勧めのVMイメージなどありましたら、教えていただけますと超うれしーですw
MySQLでもOKという場合、Ubuntu 14.04にRedmineをインストールする手順ですぐに仮想マシンの中に立ち上げられます。
何も考えず、コマンドをコピペしている程度で出来上がります。
PostgreSQLではないので、Herokuとの相性が良くないです。
そのうち、PostgreSQLでやったみたいと思います。