PowerDNS はinternal/externalと二つ上げる必要があるんですが、
docker image が mysql db 一つを想定してる
学生の良くある「1,2 ... 動きません」だな。なので、db を copy しておいて
mysql -u root -p
create database extdns;
use extdns;
GRANT ALL ON *.* TO powerdns;
で、許可を出してやると良いらしい。そこで気がついたんですが、
二つ目が port 53 already used
とかいう。つまり、podman-compose では ip-address / port の空間は共通らしい。
そこで、pythonなんかで書いてある podman-compose は見捨てることに。
やっとわかったんですが、pod を別にすれば ip-address / port の空間は別になるわけね。
つまり、pod と ip-address / port の空間は一対一と。
内向け
podman pod create --name powerdns --network pdns-br350
podman run --pod powerdns --env-file env-conf/internal/env-mysql.conf -v Mariadb:/var/lib/mysql -d mariadb --net-read-timeout=2000 --innodb_use_native_aio=0 --innodb_flush_method=fsync
podman run --pod powerdns --name powerdns-pod --env-file env-conf/external/env-powerdns.conf -d pschiffe/pdns-mysql
podman run --pod powerdns --name powerdns-admin --env-file env-conf/external/env-admin.conf -d aescanero/powerdns-admin
外向け
podman pod create --name extdns --network extpdns-br350,extpdns-br48
podman run --pod extdns --name extdns-pod --env-file env-conf/external/env-powerdns2.conf -d pschiffe/pdns-mysql
podman run --pod extdns --name extdns-admin --env-file env-conf/external/env-admin2.conf -d aescanero/powerdns-admin
という感じ。いや、BIND9なら一つですむんですけどね。
pod で作れば k8s の yaml も吐いてくれるらしい。
これで、 internal/external が mysql 一つで動きました。mysql も別で良いなら podman-compose でよい。
まだまだ、続くわけですが...
No comments:
Post a Comment