-1

Summary

I mounted a local Jenkins Build Server in a local Docker Container and exposed ports 8080 both from the host to the Jenkins container.

I want to test the integration of Jenkins with Azure DevOps so Jenkins is the build server for the project.

Docker

I simply used the official jenkins/jenkins Docker image from Docker Hub and ran it like so:

docker run -d -p 8080:8080 --name jenkins jenkins/jenkins

Container is reachable from localhost:8080 and responds well.

Windows 10 Pro

In Windows 10 Firewall I created two port rules:

  1. Inbound, TCP, Local Port: All, Remote Port: All
  2. Inbound, UDP, Local Port: All, Remote Port: All

Bell Fibe HomeHub 2000

I created a port forwarding for my IP address which the modem did assosciate to the correct computer where the Docker container is running.

Home Hub 2000 Port Forwarding

Internet

When I try to access my [public ip address]:80 that I obtain by googling "what's my ip address", I hit this page.

Site can't be reached

Related SF Question

Webserver in Docker container is not reachable via the Internet

And I'm unsure as to how to proceed or even if it's necessary. I'm rather a software architect than a system admin, and I don't really understand the need of a Docker network if my ports forwarding is right.

Will Marcouiller
  • 256
  • 2
  • 5
  • 16
  • Docker will do this itself. But your problem here is that "Docker for Windows" isn't, and isn't intended for production. Use Docker on a native Linux platform. – Michael Hampton Apr 04 '19 at 14:43
  • 1
    1- You don't need to allow UDP in my opinion 2 - I would also authorize outbound 8080 in Windows firewall 3 - can you telnet localhost:8080 ? – Notauser Apr 04 '19 at 18:32

1 Answers1

0

You cannot access Jenkins using your public IP. If you want to access Jenkins publicly, you need a VPS with static public IP. And you should install Jenkins in that VPS.

The IP you're getting by google is your internet IP, not a server IP.

Sri
  • 1