RStudioはR言語のIDEです。
XRDPもインストールされているので、リモートデスクトップから接続することができます。ユーザはubuntu、パスワードもubuntuです。
〇RStudioの画面
〇構築方法
LXDで以下のコマンドを実行して、RStudioとXfce Desktop環境インストールされたコンテナを構築します。
lxc init ubuntu:16.04 lxdxfcerstudio
lxc config set lxdxfcerstudio user.user-data - < config.yml
lxc start lxdxfcerstudio
config.yml
#cloud-config
package_upgrade: true
hostname: lxdxfcerstudio
manage_etc_hosts: true
write_files:
- path: /tmp/.xsessionrc
content: |
export LANG=ja_JP.UTF-8
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
sed -i -e "s/^EnabledIMList.*$/EnabledIMList=fcitx-keyboard-jp:True,mozc:True,fcitx-keyboard-us:False/" /home/ubuntu/.config/fcitx/profile
fcitx -r -d &
- path: /etc/default/keyboard
content: |
XKBMODEL="pc106"
XKBLAYOUT="jp"
XKBVARIANT=""
XKBOPTIONS=""
BACKSPACE="guess"
runcmd:
- 'sed -i.bak -e "s#http://archive.ubuntu.com/ubuntu/#http://ftp.riken.jp/pub/Linux/ubuntu/#g" /etc/apt/sources.list'
- 'localectl set-locale LANG=ja_JP.UTF-8'
- 'localectl set-keymap jp106'
- 'apt-get update'
- 'apt-get -y install software-properties-common'
- 'add-apt-repository ppa:hermlnx/xrdp'
- 'apt-get update'
- 'echo "export LANG=ja_JP.UTF-8" >> /home/ubuntu/.bash_profile'
- "echo 'ubuntu:ubuntu' | chpasswd"
- 'apt-get -y install xrdp fcitx-mozc xubuntu-desktop language-pack-ja language-pack-ja'
- 'im-config -n fcitx'
- 'mv /tmp/.xsessionrc /home/ubuntu'
- 'chown -R ubuntu:ubuntu /home/ubuntu'
- 'echo "deb https://cran.rstudio.com/bin/linux/ubuntu $(lsb_release -cs)/" | sudo tee -a /etc/apt/sources.list'
- "gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9"
- "gpg -a --export E084DAB9 | sudo apt-key add -"
- "apt-get update"
- "apt-get -y install r-base"
- "apt-get -y install libjpeg62"
- "wget https://download1.rstudio.org/rstudio-xenial-1.1.383-amd64.deb"
- "dpkg -i rstudio-xenial-1.1.383-amd64.deb"
- 'fcitx -r -d &'
final_message: "completed."
〇コンテナのIPを調べる
コンテナのIPは以下のコマンドで調べることができます。
lxc list
〇ホストマシンの外部からコンテナにアクセスしたい場合
以下のコマンドを実行します。
PORT=3389 PUBLIC_IP=<ホストのIP> CONTAINER_IP=<コンテナのIP> sudo -E bash -c 'iptables -t nat -I PREROUTING -i eth0 -p TCP -d $PUBLIC_IP --dport $PORT -j DNAT --to-destination $CONTAINER_IP:$PORT -m comment --comment "container"'
〇コンテナに入る
lxc exec lxdxfcerstudio /bin/bash
〇コンテナの停止
lxc stop lxdxfcerstudio
〇コンテナの削除
lxc delete lxdxfcerstudio
○関連情報
・RStudioに関する他の記事は
こちらを参照してください。