Încerc, fără succes, să rulez containerul oficial haproxy (https://hub.docker.com/_/haproxy) cu un fișier de mediu per (ceva de genul acesta https://www.loadbalancer.org/blog/how-to-install-haproxy-rhel/) pentru a-mi permite să înlocuiesc vars în haproxy.cfg meu, exemplu:
## env.txt
nod1=www1.domeniu.com
node2=www2.domeniu.com
node_port=80
## haproxy.cfg
global
...
implicite
...
frontend somefrontend
default_backend somebackend
backend somebackend
modul http
echilibru roundrobin
server node1 ${node1}:${node_port}
server node2 ${node2}:${node_port}
Se pare că nu îmi dau seama cum rulează haproxy pe acel container pentru a-mi da seama unde aș pune chiar fișierul de mediu. Am găsit /etc/environment, l-am înlocuit cu un fișier env și am reîncărcat configurația, dar acele vars nu au luat.
Ceea ce încerc să realizez este să am un mediu docker pe care, dacă vreau ca haproxy să facă referire la un nod la serverul nostru de dezvoltare în loc de un container local, pot face acest lucru doar prin editarea fișierului de mediu, spre deosebire de haproxy.cfg. Și acest lucru ar fi util, deoarece pot folosi același haproxy.cfg în producție, precum și la nivel local și singura diferență ar fi fișierul env. Am avut setări similare înainte, practic, urmând configurarea enumerată mai sus (https://www.loadbalancer.org/blog/how-to-install-haproxy-rhel/) cu systemd care încarcă fișierul env, pur și simplu nu îmi dau seama cum să fac ca docker să facă același lucru atunci când haproxy este pornit