ARMのベアメタルサーバーを提供するscalewayが、クリックひとつで30分無料お試し!、という粋なサービスを始めました。30分を過ぎるとログインできなくなりますが、何回でも試せます。
しかもDockerがインストール済み。
Test the amazing BareMetal SSD C1 servers from @scaleway on http://t.co/tPg1ptMAHr 30 minutes with a click. pic.twitter.com/eBEGUVP7j8
— scaleway (@scaleway) April 10, 2015
Dockerといえば、RockerにはRを使う人のためのイメージが各種揃っています。が、ARM用のイメージではないので自分でDockerイメージをビルドする必要があります。ということで、RStudioを動かすことができるか、スクリプトをつくって試してみました。
結論から言うと失敗だったんですけど、、いちおう記録ということで残しておきます。
つくったスクリプト
r-baseはdebian:jessie
をベースにしています。これを、Onlinelabs(Scalewayを運営している会社)が提供しているARMイメージに差し替えて、自分でビルドします。
やったこと
まずは、下のサイトに行って「GET MY SERVER」というボタンをぽちっと押します。
すると、画面が切り替わってコンソールが出現します。下の方にIPアドレス、ログイン名、パスワードが書かれています。このコンソールにログインしてもいいですし、手元からSSHしてもいいです。
で、上に貼ったgistのコマンドを実行します。
$ wget -O - https://gist.github.com/yutannihilation/4a00ab73d0864e30392f/raw/armhf-rocker.sh | sh
結果
実行すると、r-base
は無事ビルドできましたが、rstudio
は↓のエラーで失敗しました。libssl0.9.8
というパッケージにはARM用のがないみたいです。。たぶんこんな感じで、ちょこちょこARM用のパッケージがなくてこけることがありそうです。
...snip... Processing triggers for ca-certificates (20141019) ... Updating certificates in /etc/ssl/certs... 173 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d....done. dpkg: error processing archive libssl0.9.8_0.9.8o-4squeeze14_amd64.deb (--instal l): package architecture (amd64) does not match system (armhf) Errors were encountered while processing: libssl0.9.8_0.9.8o-4squeeze14_amd64.deb
まあ、ビルドに成功したr-base
の方はふつうに動きます。みたらR 3.2.0がもう入ってました。はやい…。
ubuntu@instantcloud:~$ sudo docker run -i -t r-base /bin/bash root@01405b04c392:/# R R version 3.2.0 RC (2015-04-09 r68169) -- "Full of Ingredients" Copyright (C) 2015 The R Foundation for Statistical Computing Platform: arm-unknown-linux-gnueabihf (32-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. Natural language support but running in an English locale R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. >
今後ARMがもっとメジャーになれば、対応してるパッケージも増えて使いやすくなるのかもです。とりあえずメモ。