Ubuntu にドッカーデスクトップをインストールするには?
https://docs.docker.com/desktop/install/ubuntu/ に沿って、
インストールしたばかりのデスクトップ版 Ubuntu Desktop 22.04.1 LTS に、ドッカーデスクトップ をインストールしてみようと思います。
Windowsfx11 にもインストールと動作確認できました。(2023年1月17日)
シチュエーション
インストールしたばかりのデスクトップ版 Ubuntu Desktop 22.04.1 LTS に、ドッカーデスクトップ をインストールしたらエラーが表示された。
$ sudo apt install ./docker-desktop-4.12.0-amd64.deb
[sudo] mossan のパスワード:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
注意、'./docker-desktop-4.12.0-amd64.deb' の代わりに 'docker-desktop' を選択します
インストールすることができないパッケージがありました。おそらく、あり得
ない状況を要求したか、(不安定版ディストリビューションを使用しているの
であれば) 必要なパッケージがまだ作成されていなかったり Incoming から移
動されていないことが考えられます。
以下の情報がこの問題を解決するために役立つかもしれません:
以下のパッケージには満たせない依存関係があります:
docker-desktop : 依存: docker-ce-cli しかし、インストールすることができません
E: 問題を解決することができません。壊れた変更禁止パッケージがあります。
手順
デスクトップ版 Ubuntu Desktop 22.04.1 LTS に、ドッカーデスクトップ をインストールする手順。
- ひとまず Ubuntu インストール直後は、ssh で接続できるようにしておきます。
sudo apt install -y openssh-server
インストール中に apt update していないとエラーになりますので、その時は apt update を実行します。
sudo apt update
- 一応、KVMモジュール が有効になっているか確認します。
lsmod | grep kvm
↓の状態が、KMVモジュール が有効な状態です。
$ lsmod | grep kvm
kvm_intel 372736 0
kvm 1028096 1 kvm_intel
- KVMグループ にユーザーを入れます。
sudo usermod -aG kvm $USER
この「KVMグループ にユーザーを入れる」は超重要です。抜かしてしまうと、ドッカーデスクトップを起動しても「Docker Desktop stopped…」となってしまってドッカーデスクトップが使えません。
- Docker のパッケージリポジトリをセットアップします。
ここの手順は https://docs.docker.com/engine/install/ubuntu/#set-up-the-repository のページの「Set up the repository」に書かれています。
sudo apt-get install -y \
ca-certificates \
curl \
gnupg \
lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
- ドッカーデスクトップの DEB パッケージ をダウンロードします。
curl -o docker-desktop-4.12.0-amd64.deb "https://desktop.docker.com/linux/main/amd64/docker-desktop-4.12.0-amd64.deb?utm_source=docker&utm_medium=webreferral&utm_campaign=docs-driven-download-linux-amd64"
- ドッカーデスクトップをインストールします。
sudo apt-get install -y ./docker-desktop-4.12.0-amd64.deb
最後に表示されるワーニングは無視でOKです。
N: ファイル '/home/mossan/docker-desktop-4.12.0-amd64.deb' がユーザ '_apt' からアクセスできないため、ダウンロードは root でサンドボックスを通さずに行われます。 - pkgAcquire::Run (13: 許可がありません)
- ドッカーデスクトップを起動します。
ドッカーデスクトップの Settings にある Kubernetes で「Enable Kubernetes」にチェックを入れて「Apply & Restart」ボタンを押したけれど、kubectlコマンド・・・入っていませんね。
kubectlコマンド のインストール
ドッカーデスクトップをインストールしましたが、kubectlコマンド はインストールされていませんでした。引き続き、kubectlコマンド のインストールと Kubernetes の動作確認を行います。
- kubectlパッケージ をインストールする為に、Kubernetes aptリポジトリ を追加します。
ここの手順は https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-using-native-package-management のページの「Install using native package management」に書かれています。
sudo curl -fsSLo /usr/share/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
- kubectlパッケージ をインストールします。
sudo apt-get install -y kubectl
Kubernetes の動作確認
- デプロイメントを作ります。
kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.4
- デプロイメントを公開するサービスを作ります。
kubectl expose deployment hello-minikube --type=LoadBalancer --port=8080
- ブラウザでアクセスします。
http://localhost:8080/
↓http://{PCのIPアドレス}:8080/で外部からもアクセス可能です。
以上