I believe I've got my containers install working so I can fully access it via the Volto frontend from browsers not on the same host where the containers are working. It required the change @tiberiuichim mentioned and also an obscure provision for my UFW firewall configuration on the containers host, worth describing in detail.
As @tiberiuichim mentioned:
One way to indicate this would be to use RAZZLE_API_PATH=http://$HOSTNAME:8080/Plone
instead of RAZZLE_API_PATH=http://localhost:8080/Plone
, but this would fail mysteriously in cases where $HOSTNAME is not the fully qualified domain name. It seems like the instructions are going to require some elaboration on this point.
- Arranging for port 8080 on the container host to be accessible remotely requires a more complicated UFW
allow
command than I expected. The simple UFW command I thought would work,sudo UFW allow 8080
is not sufficient. Here's what does work:sudo ufw route allow proto tcp from any to any port 8080
.
This is derived from a suggestion in a well-informed resource for reconciling operation of UFW with containers,https://github.com/chaifeng/ufw-docker
. (Sorry, I can't yet post proper links.)
As a bonus point, I found it quite helpful to use the browser developer toolkit's network call tracing facility, to see what's going on behind the scenes. I have a lot to learn about debugging container-based apps, so that provided some insight that I would normally get by watching the server log files.
I intend to file a few bug reports, including one concerning the containers documentation. I consider my problem solved, and am grateful for the help!