Windows版Podman.exeコマンドで。
WordPressサーバを構築する手順を記録しておこうと思います。
追々ですが。
構築したポッドは、他のPCでポッドを動かすマイグレーションや。
コンテナのバックアップ・リストアを行えるようにしたいなと思います。
Windows版 Podman.exeのインストール
Podman.exeのインストール手順はこちらになります。
こちらの記事に従い、Podman.exeをインストールして下さい。
インストールが完了しましたら、続きは以下になります。
WordPressポッドの起動
ポッドの起動方法は、以前作成したこちらの記事がベースになります。
今回は、この記事の中のWordPressを起動する流れですが、ボリュームのマウント-vオプションは使わず、データはすべてコンテナの中に入れるようにしました。
サービスを公開するポート番号は、8091にしました。
- ポッド作成後、mariadbとWordPressコンテナを起動します。
rem WordPress用ポッド作成 "%ProgramFiles%\RedHat\Podman\podman.exe" pod create ^ --name wp-pod -p 8091:80 rem Mariadbコンテナ作成 "%ProgramFiles%\RedHat\Podman\podman.exe" run ^ -d --restart=always ^ --pod=wp-pod ^ --name=wp-db ^ -e MYSQL_ROOT_PASSWORD="myrootpass" ^ -e MYSQL_DATABASE="wp" ^ -e MYSQL_USER="wordpress" ^ -e MYSQL_PASSWORD="w0rdpr3ss" ^ docker.io/library/mariadb:latest rem WordPressコンテナ作成 "%ProgramFiles%\RedHat\Podman\podman.exe" run ^ -d --restart=always ^ --pod=wp-pod ^ --name=wp-web ^ -e WORDPRESS_DB_NAME="wp" ^ -e WORDPRESS_DB_USER="wordpress" ^ -e WORDPRESS_DB_PASSWORD="w0rdpr3ss" ^ -e WORDPRESS_DB_HOST="127.0.0.1" ^ docker.io/library/wordpress:latest
特に問題なく起動した感じです。
Webブラウザでアクセスしてみます。
http://localhost:8091
起動用バッチファイルを作成
PCを再起動した場合に備えて、かつ他のPCからアクセスできるように、起動用のバッチファイルを作っておきます。
他のPCからアクセスするためのポートフォワードとファイアウォール設定は、netshコマンドの行になります。
ファイル名は「start_wp-pod.bat」にしてみました。
※22.11.25修正:IPアドレスを取り出す構文に不具合がありましたので修正しました。不具合の内容:IPアドレスが0で終わる場合、正しく取り出せませんでした。構文に\.を追加しました。
※22.12.8追記:ファイアウォールのルールが無限に追加されてしまうため、ルールが存在するか判定するIF文を追加しました。
rem podmanマシン起動
podman machine start
rem podmanマシンのIPアドレス取得
FOR /F %%i in ('podman.exe machine ssh "cat /proc/net/fib_trie | sed -e 's/^[ \-\|\+]*[ \-]*//' | grep '[\d]*\.' |grep -v -e '0.0.0.0' -e '^127\.[\d]*' -e '\/' -e '\.0$' -e '\.255$'"') DO set IPADR=%%i
rem ポッド起動
set pod=wp-pod
podman pod start %pod%
rem ポートフォワード
set PTNB=8091
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=%PTNB% connectaddress=%IPADR% connectport=%PTNB%
rem 受信ルール
netsh advfirewall firewall show rule name= "TCP %PTNB%" dir=in
IF %ERRORLEVEL% GEQ 1 (
netsh advfirewall firewall add rule name= "TCP %PTNB%" dir=in action=allow protocol=TCP localport=%PTNB%
)
rem 送信ルール
netsh advfirewall firewall show rule name= "TCP %PTNB%" dir=out
IF %ERRORLEVEL% GEQ 1 (
netsh advfirewall firewall add rule name= "TCP %PTNB%" dir=out action=allow protocol=TCP localport=%PTNB%
)
ポートフォワードを有効にしたい場合、必ず管理者権限で起動する必要があります。
これでPodman.exeを実行しているWindows PCのIPアドレスやmDNSホスト名でWordPressにアクセスできるようになりました。
以上でWindows PCでPodman.exeを使ってWordPressサーバを構築することができました。
次のステップとして、ポッドのマイグレーションやバックアップ・リストアを行いたいと思いますが、このWordPressコンテナは、その検証環境になります。
Windows版のPodman.exeは、まだ機能追加の段階のように思えますので、どこまでそれらの機能が実装されているか、気になるところです。
それではまた!