Raspberry Pi 2 + Docker + ownCloud
Created|Updated
http://gihyo.jp/admin/serial/01/ubuntu-recipe/0364
Raspberry Pi 2 にDocker/ownCloud を導入してみました。
OS のダウンロードとmicroSDHC への書き込み
http://www.finnie.org/software/raspberrypi/ からダウンロードします。
$ wget http://www.finnie.org/software/raspberrypi/2015-03-02-ubuntu-trusty.zip $ unzip 2015-03-02-ubuntu-trusty.zip $ dd if=2015-03-02-ubuntu-trusty.img of=/dev/sdh bs=1M
|
microSDHC をマウントします。
$ sudo apt install qemu-user-static $ cd /media/ubuntu/578bc54c-c04b-4ced-8691-7633c4a841cd $ sudo cp /usr/bin/qemu-arm-static usr/bin $ sudo mount -t proc proc proc $ sudo mount --rbind /dev dev $ sudo mount --rbind /sys sys $ sudo mkdir run/resolvconf $ sudo cat /etc/resolv.conf > run/resolvconf/resolv.conf $ sudo chroot . /bin/bash
# apt install openssh-server avahi-daemon # exit
$ sudo rm -rf run/resolvconf $ sudo umount -l sys $ sudo umount -l dev $ sudo umount proc $ sudo rm usr/bin/qemu-arm-static
|
ルートパーティションの拡張
Raspberry Pi を起動して、ubuntu/ubuntu でログインします。
$ sudo fdisk /dev/mmcblk0
|
No. |
プロンプト |
入力 |
意味 |
1 |
Command: |
d |
区画を削除 |
2 |
Partition number: |
2 |
第二パーティション |
3 |
Command: |
n |
新しい区画を作成 |
4 |
Partition type: |
p |
プライマリパーティション |
5 |
Partition number: |
2 |
第二パーティション |
6 |
First sector: |
(デフォルト) |
最初から |
7 |
Last sector: |
(デフォルト) |
残り全部 |
8 |
Command: |
w |
テーブルを書き込んで終了 |
$ sudo resize2fs /dev/mmcblk0p2
|
Docker のインストール
$ sudo mkdir /mnt/docker/tmp /mnt/docker/docker $ sudo apt install docker.io $ sudo gpasswd -a ${USER} docker $ exit
|
/etc/default/docker.ioDOCKER_OPTS="-g /mnt/docker/docker" export TMPDIR="/mnt/docker/tmp"
|
ownCloud のインストール
$ git clone https://github.com/jchaney/owncloud.git $ cd owncloud $ sed -i "s,ubuntu:14.04,mazzolino/armhf-ubuntu," Dockerfile $ sed -i "s,^\(ADD \)\(extensions.sh\) \(extensions.conf\) \(/var/www/owncloud/apps/\),\1\2 \4\n\1\3 \4," Dockerfile $ sudo mkdir -p /mnt/docker/owncloud $ sudo chown ${USER}: /mnt/docker/owncloud $ docker build -t ubuntu/owncloud .
|
ownCloud の実行
$ docker run -p 80:80 --name nginx -v /mnt/docker/owncloud:/var/www/owncloud/data ubuntu/owncloud
|
Android 端末からの接続
以下のようにConnectBot のポート転送を設定して、SSH で接続後、ブラウザからlocalhost:10080
にアクセスします。
項目 |
値 |
鍵の名前 |
http |
タイプ |
ローカル |
ソースポート |
10080 |
転送先 |
localhot:80 |