Question
How to redirect apache public url to docker container?
I searched already that it has something to the redirect module in apache, but I decided to ask here if someone can give me a direction where I should follow, because I am a bit lost.
The current situation is: I have a droplet with CentOS 7 x64 and within this droplet my docker
user with some docker containers (just showing 2 to better exemplify):
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f381c6a9a341 image1 "docker-entrypoint..." 4 weeks ago Up 3 weeks 0.0.0.0:15435->5432/tcp app1_postgres
69fb1e99b463 image2-nodejs_web "/docker-entrypoin..." 3 weeks ago Up 3 weeks 0.0.0.0:10443->443/tcp app1_nodejs
There is a container for the nodejs app and another container of the database for this app. Everything works and they can communicate with each other.
Besides, in this same droplet (outside docker) I have the user apache
where I run httpd with my static portfolio in my custom domain https://www.myportfolio.dev.
What I would like: If I access https://www.myportfolio.dev/apps/app1 it redirects somehow from the apache
to the docker container running my nodejs app in the exposed port 10443.
What I could do until now: if someone access https://www.myportfolio.dev:10443, which is the https port I have opened for the nodejs container, the app is accessible, but this is not the approach I want. I want to have the /apps/APP_NAME in the url redirecting to the specific containers.
Additional info 1: I usually have routes in my nodejs and react apps, for example:
https://myapp.com/
https://myapp.com/login
https://myapp.com/home
https://myapp.com/products
https://myapp.com/insert
among other routes, and the redirect should work fine for this routes also.
Additional info 2: Either in my portfolio either in my apps I always use SSL. Please correct me if I am wrong, but the SSL key pairs for my portfolio can also be used for all my apps, because the apache httpd remains the same, it will be used as a “proxy” !?
Additional Question: Should I also create a subdomain for this app from the example before I configure them in apache? Something like CNAME e.g. myapp1.myportfolio.dev?
I would be really thankful for every help I receive here.
Thanks in advance!
Best Regards,
Gabriel
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
×