I have dockerized shinyproxy app and I can reach it through http://localhost:8080. But I cant reach it outside the host computer.
I tried http://my-ip-adress:8080
I allowed port 8080 through windows firewall
I read comments on port forwarding through VM in here. But I am using ubuntu 20. 04 in windows 10 and there is no VM running so I dont know how to do port forwarding.
I tried to run container docker run -itdp 0.0.0.0:8080:8080 shinyproxy-example
But none of them worked.
At the end of the day I wanna get an address put it in an iframe then a website eventually. Am I missing a step or is there another way to do this?
I an new in docker and webdeveloping so any help is appreciated.
Related
So I'm setting up a vm on virtualbox with Centos. I was able to configure everything fine and with a bridge connection, I have access to the internet and the VM has an IP within the network. From the host I can ssh into the vm without a problem. Now here's the issue, for some reason if I load up the gui from the browser I can access https sites but not http sites.
I noticed this after I tried to install some applications but all mirrors were timing out. Anyone have any clue what this could be?
On my computer I have deployed my web site on IIS. If I access this website locally with :8080 works perfect, but when I try to access this site from another machine or my Android phone I get 'The site can't be reached. my_ip_address took too long to respond ERR_CONNECTION_TIMED_OUT –' this error.
I have tried solutions from this question, but nothing worked for me. Need some help!
There are few factors which can affect the accessibility of the site hosted on your local computer:
Is the client machine (including your phone) in the same network as the Server (In this case your site)
Is the firewall configured to allow connections on port 8080
Have you tried accessing the server using the IP Address. For e.g. http://192.168.0.1:port
Steps to isolate
Ping the server Ip from the client machine and see if it is able to connect to it.
ping 192.168.0.1
If the above fails, then I would assume that you are not on the same network. If it succeeds then check if the port is open.
You can also use nmap to see whether the ports are open or not
nmap -p 8080 kaushal.com
If the above fails, then open the port in your Firewall configuration and then try again.
Try this and share the results.
just for better understanding:
I have a windows7 machine/virtualBox. The Docker machine is runing an I deployed a nginx container to it. So far so good.
Now I just wonder...
In all documentations stands that I just have to use:
docker run -d -p 8080:80 nginxImg
And then I can reach the engine with
localhost:8080
But in my env my localhost cant reach the container.
I have to use the "docker-machin ip".
e.g.
192.168.99.100:8080
and that reaches the nginx Container.
Its ok for me, but I want to know why it works diffrent on my machine then in all docs explained?? Did I miss something or made a mistake?
Kind regards
Gregor
When they say localhost it means that the host machine where the docker server is running. This in your case is the Virtual Machine. Which has an IP 192.168.99.100.
If this VM has GUI installed and you can launch a browser inside the VM then you will be able to browse localhost:8080 inside the VM.
But from your Windows machine the VM is as good as a remote server. So you need the IP to reach it.
I HAVE FIXED THIS ISSUE. Please read answer below
I have installed shiny-server on Ubuntu 14.04.4 LTS with VirtualBox. After forwarding port 3838 in my router and setting a bridged network, then assigning a static IP to my virtual Ubuntu machine, I am being able to connect remotely, from a computer outside from my network and visualize the "hello" example app page, but only the HTML code is rendered.
Both R and markdown iframes are not working (connection is reset and they are grayed). On the other hand, I can perfectly browse the hello application from both, my host computer of from the guest machine itself.
The ports are open, I have checked it with a remote computer. My host computer runs on Windows 10 and I have also configured the firewall to allow TCP/UDP in/out traffic through port 3838.
I have got shiny server working on host 0.0.0.0 after running the command options(shiny.host="0.0.0.0") on RStudio but I still only can see the ui.R controls rendered and nothing from server.R that is still grayed.
Any idea of what can be causing this behaviour?
In order to get shiny server running I have followed the official installation guide in www.rstudio.com/products/shiny/download-server/ as mentioned before.
There are a few details that allowed me to make it run from a remote host (a computer outside my network connecting via Internet).
Installing packages always as root user so that they are shared among every user, ie, sudo su - \ -c "R -e \"install.packages('shiny', repos='....... (I cannot post more than 2 links yet :(
Setting Shiny host to 0.0.0.0, but running on R studio this command: options(shiny.host="0.0.0.0")
Opening ports 3838 TCP and UDP, both in and out on my host's firewall.
Opening separately UDP and TCP ports in my router; not "TCP and UPD" but first TCP and then UDP.
Opening the previous ports by the range 3838-3840, not just the 3838 one. This is not something I can give an explanation about since I was expecting that 3838 would be sufficient because shiny-server is running on host 0.0.0.0:3838; but in my case I needed to do it.
In order to make it easier, I assigned a fixed IP to the computer running shiny server. click here to see network connection image
Here is a screenshot of my router configuration just in case someone finds it useful:
Click here to see router port forwarding for shiny image
I have a Windows Vista laptop running IIS7 for its localhost. On this machine, I can successfully navigate to:
"http://localhost"
"http://127.0.0.1"
"http://mycpuname"
However, I cannot access this localhost website from another computer on the same network. Ideally I would be able to visit "http://mycpuname" (so that I can hard-code a connection), but at this point I might settle for the IP address of the machine (http://192.000.000.xyz)
I've seen similar questions asked here and elsewhere on the internet... but none of the posts seems to fix the issue for me.
Things I've tried:
- adding exceptions to Windows Firewall to allow TCP ports 80 and 8080
- disabling Windows Firewall entirely
- running the "netsh" commands in this post
Additionally, I am looking at the IP address on the Windows laptop by running "ipconfig" from the command prompt. Oddly enough, trying to access "http://192.000.000.xyz" from the Windows laptop doesn't seem to work...
I have also tried restarting IIS and restarting my machine.
Help?
Go to windows firewall with advanced security, inbound rules and check and see if world wide web services is enabled. I had this same issue, and this fixed it for me.
are you binding to 127.0.0.1? run below command
netstat -an |findstr :80 |findstr LISTEN
if it shows 127.0.0.1, you need change IIS listen to 0.0.0.0
Try netstat -na - it will show you what IP addresses your web server is listening on.
If it's only listening on 127.0.0.1, the loopback, you will have to re-configure the web server to listen on all addresses/interfaces (usually either *.*.*.*, or 0.0.0.0 in some config file, or just some drop-down in some windows dialog somewhere).
If, on the other hand, netstat tells you the web server is listening on *.*.*.* or 0.0.0.0, i.e. all interfaces, then you have to figure out what's blocking the traffic - it's either the local firewall, or something on the path between the two computers.
If you want to access your website from any other computer on your local network then you need to simply type your network IP and port. If you want to access it from internet then you need to configure your IP.