Podman host ip attach to container

Hey everyone, I’m using VyOS 1.3.2 in my home lab.
I’m trying to set up a podman container and assign an http port to my WAN interface.
But I have not been able to find the vyos commands for this. Just how to assign a port.

set container name ingress image traefik
set container name ingress allow-host-networks 
set container name ingress port dashboard source 8080
set container name ingress port dashboard destination 8080

Directly through the podman it is possible.

podman run -d \
  -p 1.1.1.1:80:80 \
  -p 1.1.1.1:443:443 \
  -p 127.0.0.1:8080:8080 \
  --name ingress traefik --api.insecure=true -api.dashboard=true

Maybe I’m missing something in the configuration, but I still couldn’t find a solution in the documentation.
Someone solved such a problem? Please share your method.

Yeh I’m not seeing an option to specify interface/ip so I believe since you are using allow-host-networks it’s going to attach the listening port to all active interfaces. You would need to devise additional firewall rules to drop connections to everything else except for WAN.

Sounds like the command could use a feature enhancement on the destination section. Something like

set container name ingress port dashboard destination [interface | ip :] 8080

You’re right, the firewall will need to be configured.
But now it’s a staged environment and it’s disabled.
The main problem is that I cannot open a port on a specific interface, although it works from the original podman utility

Specific address:port is not implemented. It listen by default on all interfaces or on network if you declared “set container network x.x.x.x”
And attached this network to container.
Could you create a feature request ?
https://vyos.dev/

1 Like