[ネットワーク編] [Linuxメモ]
[SSL/TLS/PKIの基礎知識] [SSHの基礎知識]
[Docker]
Dockerを入れる前に互換環境を消すということで気になっていたRedHatのPodman。
Podman は Docker をつついてみてから使ってみるのもいいが、今ならRedHatはじめLinuxに標準で入っていたりするのはPodmanの方なので使いやすいかもしれない。
コンテナ系の仕様が公開されているのでsystemd系を使うようにして作られた系統。
GoogleのKubernetesと同じPod系設定ファイルが使えるらしいので、単体Kubernetesとして使うのもいいのかもしれない。
操作系はDocker互換を目指している。ComposeではなくPodを使う方向だったが、v4系でDocker Composeも対応していた。
plugin も使える。compose plugin は使えるがDocker系?
Docker Compose 系にも対応しているが、pod として複数コンテナをまとめる系統になっているようだ。
参考本
https://podman.io/ または https://podman-desktop.io/
使っていた RaspberryPi は podman v3.0.1 だったのでdocker compose 互換はまだ入っていないバージョンだった。一応次のかたちで使えるがOS入れ直してみよう。
# apt install podman
v4.3ぐらいになるまでは pip で docker-compose 互換環境をインストールする (暫定)
# pip3 install podman-compose
OSを入れ直してみる。 https://www.raspberrypi.com/software/
RaspberryPi OS Lite 64bit 最新版(2024-03-15 リリース) bookwormでは podman v4.3.1 が使える。
# apt install podman podman-compose
podman-compose もインストールできるが podman compose の拡張としては使えない
などが未対応
Podman Desktop v1.8くらいからインストールできるのでDesktop から入れてみるといろいろ簡単。Githubに最新版もあるので入れ換えてもいい。
wsl2 を最新版にしないといけない場合があるかも。
Podman v5.0 もPodman Desktop v1.8から使えるのでどちらのバージョンでもいいかも。
Podmanインストール後、VMを作成するとだいたい使える。wsl --list やWindows Terminal から確認できる。名前を変えていなければpodman-machine-default という名になっていたりする。標準でインストールされるUbuntu とは別に実行される。Dockerとも別環境になる。
コマンドプロンプトからも利用可能、実体は作成したVMで実行されている。
再インストール? Githubの最新版 Podman Version 4.8.2に変えてみる。
Windows に再インストールしてもVMの環境は更新されないのでVMは消して作り直すくらいがいいかもしれない。データは退避しておくか構築しなおすか。古い方は使わなくなるまで残してもいい。
Podman Desktop から VMを削除する、新しくVMを作り直す。とするくらいだと楽。
コマンドは互換を目指しているようだ。
podが扱えるなどいろいろ拡張されているところはあるが。まずはDockerの範囲で。
内部ではデーモンレスをうたっている。そういうことで? Dockerはroot前提で動いていた。PodmanはLinuxのユーザ空間でも実行することができる。1000番以下のポートが開けないなど普通の制限はあるがそれ以外気になるような点もないはず。
podman ← docker
podman-compose ← docker compose
その程度でDockerで使える機能はだいたい使える。最新だとpluginも使えるらしい。podman compose プラグインは docker と podman どっちに繋がるのかよくわからない。
置き換えるパッケージもあるらしいので入れてみると外見はほとんど同じになるようだ。
Docker HubはDocker用なので、docker.io/ がないと探せなくなる。Docker用でも付けておいた方がよさそう。
どこかを設定すれば解決できる。
podman login docker.io
Java を利用するには
などを利用する
x86-64 | aarch64 | |||
---|---|---|---|---|
amd64 | arm64 | arm64/v8 | ||
eclipse-temurin | 17 | ○ | ○ | |
21 | × | ○ | ||
openjdk | 17 | ○ | ○ | |
21 | ○ | ○ | ||
RaspberryPi | 4B | 5B |
eclipse-temurin:21 は RsapberryPi では arm64/v8 なので5B専用、openjdk:21 は arm64 なので4Bでも使えた。