Windows環境でのRaspbianコンテナの起動
ちょっと質問?問い合わせ?受けまして。ありがたいことに見てくれて興味持ってくれている方がいらっしゃるようで、DockerよくわかんないですがWindows環境でRaspbian動かしたいんですみたいな感じなので、単にRaspbian動かしたいだけなら他にもいろいろやり方ありますが、せっかくなのでMacでやったものをWindows環境でもやってみます。
検証環境(職場の機器ですごめんなすん)
OS:Windows 10 Enterprise 2016 LTSB
CPU:Core i7-7600U
メモリ:16GB
ところでWindowsのスクショ撮るのもWin+Shift+Sでなんかできるようになってますね!!完全にMacに寄せてきてる感じ。でもやっぱどっかに自動でファイルできてくれたほうが嬉しいなあ。作業記録としても楽なんだけどな。
Docker Desktop for Windows(今はこう言うのか)をインストールする際はHyper-Vを有効化しなくちゃいけないみたいなので、[コントロールパネル]-[プログラムと機能]-[Windowsの機能の有効化または無効化]から、Hyper-Vにチェックを付けてOKします。
・・・で、思ったけど、Hyper-VってProとかEnterpriseじゃないとダメだっけ?
どうやら、HomeとかではDocker Toolboxでいいみたいですね。でもなんかこの辺の機能は正直Proとかでやっておいたほうがいいんじゃないかなとか思いつつ、環境に合わせて入れてみてください。
再起動しろと言われるのでしますが、こういう何かインストール後とか構成変更後で再起動しろと言われるのがとても嫌い。
Docker Desktop for Windowsをダウンロードします。DockerHUBのアカウント聞かれたので、登録しないとダメなのかも?いける?
exeダウンロードしてインストールします。・・・・しま・・・・・!!
ぐおおおおおお。結構あるんですよね。LTSCなら行けるかな。まあ素直に10Proにします・・・ということで環境チェンジして再チャレンジ。・・・いけたあー。
ちょっと調べてみたら・・・古いOSビルドとかに対応できるのもあるみたいですね。PowerShellからのインストールだとこんな感じだそうです。というわけで、やっぱり環境は戻してPowerShellから下記でインストール→再起動します。
最新
> invoke-webrequest -uri https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.exe -outfile .\dockerInstaller.exe
最新でいけないときはこっち
> invoke-webrequest -uri https://download.docker.com/win/stable/31259/Docker%20for%20Windows%20Installer.exe -outfile .\dockerInstaller.exe
インストール
> .\dockerInstaller.exe install --quiet
再起動
> Restart-Computer
再起動したら、使えるけど新しくしてね・・・ってお願いされちゃいましたかわいい。デスクトップにアイコンができてたので、ダブルクリックで起動します。起動かなり時間かかるなあ。
起動プロセスが終わる前にdocker psとかしちゃったらこうなっちゃいました。ご、ごめん・・・待てなかった・・・でもやっぱかわいい。再起動して待ってたら、今度はちゃんと起動してくれました。あせっちゃいけませんね・・・。
dockerコマンドが使えるようになっています。便利になったもんだな・・・。昔はね、そもそもWindows環境でDockerなんてね・・・・と回顧30秒。
>docker version
Client: Docker Engine - Community
Version: 18.09.2
API version: 1.39
Go version: go1.10.8
Git commit: 6247962
Built: Sun Feb 10 04:12:31 2019
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.2
API version: 1.39 (minimum version 1.12)
Go version: go1.10.6
Git commit: 6247962
Built: Sun Feb 10 04:13:06 2019
OS/Arch: linux/amd64
Experimental: false
ここからやっとRaspbianをコンテナで起動させる工程に行きます。まずはダウンロード。ありがとうJAIST。
ダウンロードしたらコンテナイメージ作成
> type root.tar.xz | docker import - r/raspbian
sha256:125212eabef8f4e3d586fa20ff76c643f7626b6db0b89f8d19b80ec15c55aaa0
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
r/raspbian latest 125212eabef8 About a minute ago 1.03GB
1GB超えちゃいましたが、できてるみたいです。じゃあ例のmartiarchのやつ使ってみます。
> docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
ダウンロードとかごにょごにょ
> docker run --rm -t arm64v8/ubuntu uname -m
ごにょごにょ
aarch64
順調順調・・・!次はRaspbianイメージの起動。
> docker run -it -d -p 8989:80 --name winbian r/raspbian /bin/bash
a03a7696c7b7f479aec76e0083e0d32d87f015d9ab5086f423ecc79d370e4c77
> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a03a7696c7b7 r/raspbian "/bin/bash" 6 seconds ago Up 4 seconds 0.0.0.0:8989->80/tcp winbian
調子に乗ってwinbianなんて名前にしてみましたが、無事起動しました!とりあえずお決まりのWebサーバとか入れてみます。
コンテナに侵入!
> docker exec -it winbian /bin/bash
バージョン確認
root@a03a7696c7b7:/# cat /etc/issue
Raspbian GNU/Linux 10 \n \l
いろいろインストール
root@a03a7696c7b7:/# apt-get update
root@a03a7696c7b7:/# apt-get install apache2
root@a03a7696c7b7:/# apt-get install php
phpがなかなか長くかかりましたが、とりあえずinfo.phpファイルをドキュメントルートに置いて、表示できたので動いてるようです。あとDB作成と思ったんですが、mysql(mariadb)起動時にsocketのエラーで躓いたので、一旦ここまでにします。前も同じエラーに遭遇しましたが、どうやったか忘れた・・・とりあえずDBは別のコンテナで立ち上げてもいいかもですね。
ちょっと質問?問い合わせ?受けまして。ありがたいことに見てくれて興味持ってくれている方がいらっしゃるようで、DockerよくわかんないですがWindows環境でRaspbian動かしたいんですみたいな感じなので、単にRaspbian動かしたいだけなら他にもいろいろやり方ありますが、せっかくなのでMacでやったものをWindows環境でもやってみます。
検証環境(職場の機器ですごめんなすん)
OS:Windows 10 Enterprise 2016 LTSB
CPU:Core i7-7600U
メモリ:16GB
ところでWindowsのスクショ撮るのもWin+Shift+Sでなんかできるようになってますね!!完全にMacに寄せてきてる感じ。でもやっぱどっかに自動でファイルできてくれたほうが嬉しいなあ。作業記録としても楽なんだけどな。
Docker Desktop for Windows(今はこう言うのか)をインストールする際はHyper-Vを有効化しなくちゃいけないみたいなので、[コントロールパネル]-[プログラムと機能]-[Windowsの機能の有効化または無効化]から、Hyper-Vにチェックを付けてOKします。
・・・で、思ったけど、Hyper-VってProとかEnterpriseじゃないとダメだっけ?
どうやら、HomeとかではDocker Toolboxでいいみたいですね。でもなんかこの辺の機能は正直Proとかでやっておいたほうがいいんじゃないかなとか思いつつ、環境に合わせて入れてみてください。
再起動しろと言われるのでしますが、こういう何かインストール後とか構成変更後で再起動しろと言われるのがとても嫌い。
Docker Desktop for Windowsをダウンロードします。DockerHUBのアカウント聞かれたので、登録しないとダメなのかも?いける?
Docker Hub
hub.docker.com
exeダウンロードしてインストールします。・・・・しま・・・・・!!
ぐおおおおおお。結構あるんですよね。LTSCなら行けるかな。まあ素直に10Proにします・・・ということで環境チェンジして再チャレンジ。・・・いけたあー。
ちょっと調べてみたら・・・古いOSビルドとかに対応できるのもあるみたいですね。PowerShellからのインストールだとこんな感じだそうです。というわけで、やっぱり環境は戻してPowerShellから下記でインストール→再起動します。
最新
> invoke-webrequest -uri https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.exe -outfile .\dockerInstaller.exe
最新でいけないときはこっち
> invoke-webrequest -uri https://download.docker.com/win/stable/31259/Docker%20for%20Windows%20Installer.exe -outfile .\dockerInstaller.exe
インストール
> .\dockerInstaller.exe install --quiet
再起動
> Restart-Computer
再起動したら、使えるけど新しくしてね・・・ってお願いされちゃいましたかわいい。デスクトップにアイコンができてたので、ダブルクリックで起動します。起動かなり時間かかるなあ。
起動プロセスが終わる前にdocker psとかしちゃったらこうなっちゃいました。ご、ごめん・・・待てなかった・・・でもやっぱかわいい。再起動して待ってたら、今度はちゃんと起動してくれました。あせっちゃいけませんね・・・。
dockerコマンドが使えるようになっています。便利になったもんだな・・・。昔はね、そもそもWindows環境でDockerなんてね・・・・と回顧30秒。
>docker version
Client: Docker Engine - Community
Version: 18.09.2
API version: 1.39
Go version: go1.10.8
Git commit: 6247962
Built: Sun Feb 10 04:12:31 2019
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.2
API version: 1.39 (minimum version 1.12)
Go version: go1.10.6
Git commit: 6247962
Built: Sun Feb 10 04:13:06 2019
OS/Arch: linux/amd64
Experimental: false
ここからやっとRaspbianをコンテナで起動させる工程に行きます。まずはダウンロード。ありがとうJAIST。
ダウンロードしたらコンテナイメージ作成
> type root.tar.xz | docker import - r/raspbian
sha256:125212eabef8f4e3d586fa20ff76c643f7626b6db0b89f8d19b80ec15c55aaa0
> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
r/raspbian latest 125212eabef8 About a minute ago 1.03GB
1GB超えちゃいましたが、できてるみたいです。じゃあ例のmartiarchのやつ使ってみます。
> docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
ダウンロードとかごにょごにょ
> docker run --rm -t arm64v8/ubuntu uname -m
ごにょごにょ
aarch64
順調順調・・・!次はRaspbianイメージの起動。
> docker run -it -d -p 8989:80 --name winbian r/raspbian /bin/bash
a03a7696c7b7f479aec76e0083e0d32d87f015d9ab5086f423ecc79d370e4c77
> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a03a7696c7b7 r/raspbian "/bin/bash" 6 seconds ago Up 4 seconds 0.0.0.0:8989->80/tcp winbian
調子に乗ってwinbianなんて名前にしてみましたが、無事起動しました!とりあえずお決まりのWebサーバとか入れてみます。
コンテナに侵入!
> docker exec -it winbian /bin/bash
バージョン確認
root@a03a7696c7b7:/# cat /etc/issue
Raspbian GNU/Linux 10 \n \l
いろいろインストール
root@a03a7696c7b7:/# apt-get update
root@a03a7696c7b7:/# apt-get install apache2
root@a03a7696c7b7:/# apt-get install php
phpがなかなか長くかかりましたが、とりあえずinfo.phpファイルをドキュメントルートに置いて、表示できた↓ので動いてるようです。あとDB作成と思ったんですが、mysql(mariadb)起動時にsocketのエラーで躓いたので、一旦ここまでにします。前も同じエラーに遭遇しましたが、どうやったか忘れた・・・とりあえずDBは別のコンテナで立ち上げてもいいかもですね。
この記事が気に入ったらサポートをしてみませんか?