SaaS Using Apache, docker and flaskApache 2.4 RequestHeader while reverse proxying with ProxyPassApache Reverse Proxy setting for site having Spring SecurityHow can I use a virtual host to redirect https subfolders to different ports in apache?How to Configure Apache mod_proxy to proxy Glassfish 4.1 on Fedora 21?Basic auth Apache with TomcatHide Original URL using mod_proxyDocker compose and nginx load balancerDocker application accessible through subdomain via ProxyPassNginx With Dokku and FlaskApache .conf file ignored
If a massive object like Jupiter flew past the Earth how close would it need to come to pull people off of the surface?
What does the term “mohel” mean in Hilchot Melicha (salting)?
How to properly maintain eye contact with people that have distinct facial features?
A Mathematical Discussion: Fill in the Blank
Scaffoldings in New York
Crossword gone overboard
Is this story about US tax office reasonable?
1960s sci-fi novella with a character who is treated as invisible by being ignored
How can I find where certain bash function is defined?
Can non-English-speaking characters use wordplay specific to English?
What does it mean when you think without speaking?
What caused the tendency for conservatives to not support climate change reform?
Can a non-EU citizen travel within schengen zone freely without passport?
Is CD audio quality good enough for the final delivery of music?
Can the Help action be used to give advantage to a specific ally's attack (rather than just the next ally who attacks the target)?
Is my router's IP address really public?
How current works
Different PCB color ( is it different material? )
What's the connection between "kicking a pigeon" and "how a bill becomes a law"?
The Passive Wisdom (Perception) score of my character on D&D Beyond seems too high
How do I subvert the tropes of a train heist?
Why doesn't the Earth's acceleration towards the Moon accumulate to push the Earth off its orbit?
Leading and Suffering Numbers
What is the 中 in ダウンロード中?
SaaS Using Apache, docker and flask
Apache 2.4 RequestHeader while reverse proxying with ProxyPassApache Reverse Proxy setting for site having Spring SecurityHow can I use a virtual host to redirect https subfolders to different ports in apache?How to Configure Apache mod_proxy to proxy Glassfish 4.1 on Fedora 21?Basic auth Apache with TomcatHide Original URL using mod_proxyDocker compose and nginx load balancerDocker application accessible through subdomain via ProxyPassNginx With Dokku and FlaskApache .conf file ignored
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I'm working on an application using flask and mysql, the application works great and it's already in production, for this I have several customers that will use it, therefore I'm using docker to isolate the instances (kubernetes in the near future), I've tested the approach using docker-compose.yaml and it works well, and deploys the application using a port like 5001 (customer 1), 5002 (customer 2), etc...
To forward the requests I've been using apache proxypass like this:
conf.d/customer1:
ProxyPass /customer1/myapp http://localhost:5001/
ProxyPassReverse /customer1/myapp http://localhost:5001/
conf.d/customer2:
ProxyPass /customer2/myapp http://localhost:5002/
ProxyPassReverse /customer2/myapp http://localhost:5002/
The steps to automate the docker deployment for new customers is fairly simple with Kubernetes (or plain docker), but the thing that I'm having struggles with is the apache configuration, having to change the site-avaiblable or reload the service to load new configuration files from a conf.d folder feels a bit rubbish, what I would love to have is something like:
ProxyPass /[customer]/myapp http://localhost:[port]/
ProxyPassReverse /[customer]/myapp http://localhost:[port]/
And have a way to externally map customer to port without having to restart or refresh apache, is there a way to do this?
Note: I'd to change from rewriterules to proxypass due to problems with url_for not taking the mapping properly. (there's a long discussion in SO about this)
apache-2.4 reverse-proxy python flask
add a comment |
I'm working on an application using flask and mysql, the application works great and it's already in production, for this I have several customers that will use it, therefore I'm using docker to isolate the instances (kubernetes in the near future), I've tested the approach using docker-compose.yaml and it works well, and deploys the application using a port like 5001 (customer 1), 5002 (customer 2), etc...
To forward the requests I've been using apache proxypass like this:
conf.d/customer1:
ProxyPass /customer1/myapp http://localhost:5001/
ProxyPassReverse /customer1/myapp http://localhost:5001/
conf.d/customer2:
ProxyPass /customer2/myapp http://localhost:5002/
ProxyPassReverse /customer2/myapp http://localhost:5002/
The steps to automate the docker deployment for new customers is fairly simple with Kubernetes (or plain docker), but the thing that I'm having struggles with is the apache configuration, having to change the site-avaiblable or reload the service to load new configuration files from a conf.d folder feels a bit rubbish, what I would love to have is something like:
ProxyPass /[customer]/myapp http://localhost:[port]/
ProxyPassReverse /[customer]/myapp http://localhost:[port]/
And have a way to externally map customer to port without having to restart or refresh apache, is there a way to do this?
Note: I'd to change from rewriterules to proxypass due to problems with url_for not taking the mapping properly. (there's a long discussion in SO about this)
apache-2.4 reverse-proxy python flask
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31
add a comment |
I'm working on an application using flask and mysql, the application works great and it's already in production, for this I have several customers that will use it, therefore I'm using docker to isolate the instances (kubernetes in the near future), I've tested the approach using docker-compose.yaml and it works well, and deploys the application using a port like 5001 (customer 1), 5002 (customer 2), etc...
To forward the requests I've been using apache proxypass like this:
conf.d/customer1:
ProxyPass /customer1/myapp http://localhost:5001/
ProxyPassReverse /customer1/myapp http://localhost:5001/
conf.d/customer2:
ProxyPass /customer2/myapp http://localhost:5002/
ProxyPassReverse /customer2/myapp http://localhost:5002/
The steps to automate the docker deployment for new customers is fairly simple with Kubernetes (or plain docker), but the thing that I'm having struggles with is the apache configuration, having to change the site-avaiblable or reload the service to load new configuration files from a conf.d folder feels a bit rubbish, what I would love to have is something like:
ProxyPass /[customer]/myapp http://localhost:[port]/
ProxyPassReverse /[customer]/myapp http://localhost:[port]/
And have a way to externally map customer to port without having to restart or refresh apache, is there a way to do this?
Note: I'd to change from rewriterules to proxypass due to problems with url_for not taking the mapping properly. (there's a long discussion in SO about this)
apache-2.4 reverse-proxy python flask
I'm working on an application using flask and mysql, the application works great and it's already in production, for this I have several customers that will use it, therefore I'm using docker to isolate the instances (kubernetes in the near future), I've tested the approach using docker-compose.yaml and it works well, and deploys the application using a port like 5001 (customer 1), 5002 (customer 2), etc...
To forward the requests I've been using apache proxypass like this:
conf.d/customer1:
ProxyPass /customer1/myapp http://localhost:5001/
ProxyPassReverse /customer1/myapp http://localhost:5001/
conf.d/customer2:
ProxyPass /customer2/myapp http://localhost:5002/
ProxyPassReverse /customer2/myapp http://localhost:5002/
The steps to automate the docker deployment for new customers is fairly simple with Kubernetes (or plain docker), but the thing that I'm having struggles with is the apache configuration, having to change the site-avaiblable or reload the service to load new configuration files from a conf.d folder feels a bit rubbish, what I would love to have is something like:
ProxyPass /[customer]/myapp http://localhost:[port]/
ProxyPassReverse /[customer]/myapp http://localhost:[port]/
And have a way to externally map customer to port without having to restart or refresh apache, is there a way to do this?
Note: I'd to change from rewriterules to proxypass due to problems with url_for not taking the mapping properly. (there's a long discussion in SO about this)
apache-2.4 reverse-proxy python flask
apache-2.4 reverse-proxy python flask
asked May 15 at 11:43
CrossCross
17527
17527
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31
add a comment |
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f967355%2fsaas-using-apache-docker-and-flask%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f967355%2fsaas-using-apache-docker-and-flask%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Nothing wrong with reloading apache gracefully; or haproxy which IMHO is better suited for this.
– wurtel
May 15 at 12:31