Docker — How to Edit Bind Exist Container Ports to the Host

We have this running container, and wa re going to change the binded container port from 9212 to 9200.

1. Stop running container.

Stop the running container which you want to edit, in my case it is . So I run this command :

docker stop mgt-dev-71

2. Go to docker containers directory.

For linux open up your terminal and go to

For windows or linux, you can follow this step to access : https://medium.com/@bestafiko/how-to-access-docker-mobylinux-vm-on-windows-or-mac-23de89b47099

3. Edit hostconfig.json.

Change directory to where your container directory which is the . In my case, it is .

Edit via nano or vim editor, you will find such long one line like this one.

Then, find like in the picture below.

And add or edit to PortBindings, in my case I would like to port of my computer to port of this container. So it would be like this.

"PortBindings":{"80/tcp":[{"HostIp":"","HostPort":"8080"}], "22/tcp":[{"HostIp":"","HostPort":"22"}], "3306/tcp": ......}

80 : is port in container.

8080 : is port in computer/host that will be pointed to port 80 of container.

4. Restart docker service.

systemctl restart docker

in Windows and Mac, you need to restart docker machine.

5. Start container.

docker start mgt-dev-71

Voila… You just point port 8080 of your host to docker container.

I wrote these tutorials for myself in future when I forget for the next steps.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store