iOS_の画像__1_

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とかでやっておいたほうがいいんじゃないかなとか思いつつ、環境に合わせて入れてみてください。

画像2

再起動しろと言われるのでしますが、こういう何かインストール後とか構成変更後で再起動しろと言われるのがとても嫌い。

画像2

Docker Desktop for Windowsをダウンロードします。DockerHUBのアカウント聞かれたので、登録しないとダメなのかも?いける?

exeダウンロードしてインストールします。・・・・しま・・・・・!!

画像4

ぐおおおおおお。結構あるんですよね。LTSCなら行けるかな。まあ素直に10Proにします・・・ということで環境チェンジして再チャレンジ。・・・いけたあー。

画像4

画像5

ちょっと調べてみたら・・・古い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

画像6

再起動したら、使えるけど新しくしてね・・・ってお願いされちゃいましたかわいい。デスクトップにアイコンができてたので、ダブルクリックで起動します。起動かなり時間かかるなあ。

画像7

起動プロセスが終わる前にdocker psとかしちゃったらこうなっちゃいました。ご、ごめん・・・待てなかった・・・でもやっぱかわいい。再起動して待ってたら、今度はちゃんと起動してくれました。あせっちゃいけませんね・・・。

画像8

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


画像9

再起動したら、使えるけど新しくしてね・・・ってお願いされちゃいましたかわいい。デスクトップにアイコンができてたので、ダブルクリックで起動します。起動かなり時間かかるなあ。

画像10

起動プロセスが終わる前にdocker psとかしちゃったらこうなっちゃいました。ご、ごめん・・・待てなかった・・・でもやっぱかわいい。再起動して待ってたら、今度はちゃんと起動してくれました。あせっちゃいけませんね・・・。

画像11

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は別のコンテナで立ち上げてもいいかもですね。

画像12



この記事が気に入ったらサポートをしてみませんか?