What if you want to host multiple Oracle JET applications? You can do it easily on Oracle Always Free Cloud. The solution is described in the below diagram:
You should wrap Oracle JET application into Node.js and deploy it to Oracle Compute Instance through Docker container. This is described in my previous post - Running Oracle JET in Oracle Cloud Free Tier.
Make sure to create Docker container with a port different than 80. To host multiple Oracle JET apps, you will need to create multiple containers, each assigned with a unique port. For example, I'm using port 5000:
docker run -p 5000:3000 -d --name appname dockeruser/dockerimage
This will map standard Node port 3000 to port 5000, accessible internally within Oracle Compute Instance. We can direct external traffic from port 80 to port 5000 (or any other port, mapped with Docker container) through Nginx.
Install Nginx:
yum install nginx
Go to Nginx folder:
cd etc/nginx
Edit configuration file:
nano nginx.conf
Add context root configuration for Oracle JET application, to be directed to local port 5000:
location /invoicingdemoui/ {
proxy_pass http://127.0.0.1:5000/;
}
To allow HTTP call from Nginx to port 5000 (or other port), run this command (more about it on Stackoverflow):
setsebool -P httpd_can_network_connect 1
Reload Nginx:
systemctl reload nginx
Check Nginx status:
systemctl status nginx
That's all. Your Oracle JET app (demo URL) now accessible from the outside:
You should wrap Oracle JET application into Node.js and deploy it to Oracle Compute Instance through Docker container. This is described in my previous post - Running Oracle JET in Oracle Cloud Free Tier.
Make sure to create Docker container with a port different than 80. To host multiple Oracle JET apps, you will need to create multiple containers, each assigned with a unique port. For example, I'm using port 5000:
docker run -p 5000:3000 -d --name appname dockeruser/dockerimage
This will map standard Node port 3000 to port 5000, accessible internally within Oracle Compute Instance. We can direct external traffic from port 80 to port 5000 (or any other port, mapped with Docker container) through Nginx.
Install Nginx:
yum install nginx
Go to Nginx folder:
cd etc/nginx
Edit configuration file:
nano nginx.conf
Add context root configuration for Oracle JET application, to be directed to local port 5000:
location /invoicingdemoui/ {
proxy_pass http://127.0.0.1:5000/;
}
To allow HTTP call from Nginx to port 5000 (or other port), run this command (more about it on Stackoverflow):
setsebool -P httpd_can_network_connect 1
Reload Nginx:
systemctl reload nginx
Check Nginx status:
systemctl status nginx
That's all. Your Oracle JET app (demo URL) now accessible from the outside:
No comments:
Post a Comment