podman のコンテナ名で通信する

コンテナを複数立ち上げた場合、他のコンテナへアクセスする場合は

  • 10.88.0.60 のように、起動のたびに変わるIPを指定する
  • 10.88.0.1:8080 のように、ホストのIPを指定&ポートフォワーディング
  • pod を使ってコンテナをまとめる

の3パターンがあります。Docker だと IP ではなくコンテナ名でアクセスできたので、podman でもできないか試してみました。

“podman のコンテナ名で通信する” の続きを読む

CentOS 8 標準の podman で不具合に当たったので新しいバージョンを入れてみる

CentOS 8 の AppStream から dnf を使ってインストールすると podman v 1.6.4 が入るのですが、不具合があったので新しいバージョンを入れてみました。

Podman Installation Instructions
https://podman.io/getting-started/installation.html
上記サイトから CentOS 8 インストール用コマンドを引用します。

これで新しいバージョンが入ります。

具体的に発生した不具合

ホストマシンをリブートした場合、IPアドレスの割り当てができないというエラーが出てコンテナが起動できませんでした。

Rebooted, dangling file in /var/lib/cni/networks/podman prevents container starting
https://github.com/containers/podman/issues/3759

ログとしては以下のように出ます。

再起動するたびにエラーが起きるので、 systemd に登録しても自動的に立ち上がらない問題に悩まされました。

最新にしても起こる事象

firewall-cmd --reloadすると、 podman が設定したファイアウォールのルールが消えてしまう問題もあるようです。コンテナを restart すると再度設定されます。こちらは 2.0.4 で発生しました。

CNI: Make firewalld rules –permanent
https://github.com/containers/podman/issues/5431

Laravel に既存システムの認証機能を移植する

どんなシステムでも、やることとしては以下の通りだと思います。これらを実装していきます。

  • パスワードのハッシュ化方式を置き換える
  • ID、パスワードの入っているテーブルや列名を変更する
  • ID、パスワード以外の列を参照したい場合の作りこみ
“Laravel に既存システムの認証機能を移植する” の続きを読む

PowerShell で ssh で繋いだ先のログを流しながらファイルにも保存する

Web アプリの動作確認中、エビデンスとしてログファイルを残さなければならない場面とそこそこ出くわすかと思います。Windows でも ssh コマンドを使えるようになったので、それで Linux サーバーに接続しファイルに残すのはいいですが、一緒に画面にも流したいですよね。Linux の tee コマンドにあたる Tee-Object というコマンドがあるのでそれを使用します。

“PowerShell で ssh で繋いだ先のログを流しながらファイルにも保存する” の続きを読む