How to use only ONE volume for 2 mount points? (beginner!)
simonmeggle
PROOP

a year ago

Hello,

I would like to deploy nginx-proxymanager (jc21/nginx-proxy-manager). 

The docker image documentation says that I need two mounted volumes for this: 

- /etc/letsencrypt

- /data

Only after some detours (and a few failed deployments :-) ) did I read that Railway only allows 1 volume per service. 

What is the recommended way to get these two paths into one volume? 

Thanks & regards - Simon

Solved

6 Replies

simonmeggle
PROOP

a year ago

If I only mount the /data volume, I get "ERROR: /etc/letsencrypt is not mounted! Check your docker configuration."

Mounting /etc/letsencrypt instead kind of fixes the problem, the container starts.

But then I have the /data folder inside of the container.

man_shrugging emoji Any hints?


brody
EMPLOYEE

a year ago

Hello!

There is unfortunately no way to mount a volume to two different mount points.

I would instead like to help you with an alternative to NGINX as it's not good in environments where the upstreams use dynamic IPs like the Railway environment (both public and private) given that by default it will cache the DNS results for the upstream domain for the lifetime NGINX stays running, once the upstream changes the IP the proxy connection breaks.

Not to mention that you don't need letsencrypt given we do that for you.

So, can you start by saying what you hope to achieve with the NGINX proxy manager?

Best,
Brody


Status changed to Awaiting User Response Railway about 1 year ago


simonmeggle
PROOP

a year ago

Thanks Brody,

ok, I think I have to go one step back. Thanks for pointing out that Railway already creates the certificates.

What I want to achieve: run a nginx container which serves pages with dummy content I can use in my trainings for automated tests.
The pages are showing different challenges like dropdown menus, iframes, shadow doms etc. where students can practice on.
To achieve only this, a single nginx instance is sufficient.
But I also want to provide more complex scenarios with authentication (Basic, TOTP, client certificates etc.). For this reason I think I need "something in front" of the nginx web server.

Lastly, I don't want to make the page public. Students coming from my learning platform should be authenticated with a client cookie.

Again, thanks for your advises.

Best regards, Simon


Status changed to Awaiting Railway Response Railway about 1 year ago


brody
EMPLOYEE

a year ago

Hello,

For serving basic pages I would highly recommend Caddy, it is far more user friendly then NGINX as the Caddy config is far more approachable then NGINX's config.

As for the authorization stuff, Caddy or NGINX can do basic auth, but they aren't going to help you with other authorization methods, for that you would need to write your own code.

Best,

Brody


Status changed to Awaiting User Response Railway about 1 year ago


brody

Hello,For serving basic pages I would highly recommend Caddy, it is far more user friendly then NGINX as the Caddy config is far more approachable then NGINX's config.As for the authorization stuff, Caddy or NGINX can do basic auth, but they aren't going to help you with other authorization methods, for that you would need to write your own code.Best,Brody

simonmeggle
PROOP

a year ago

Thanks Brody. That helped a lot!


Status changed to Awaiting Railway Response Railway about 1 year ago


brody
EMPLOYEE

a year ago

Happy I could help, please let me know if you have any more questions!


Status changed to Awaiting User Response Railway about 1 year ago


Status changed to Solved brody about 1 year ago


Loading...