By mgalland
Dear community,
I have built a droplet with Ubuntu 18.04 and Docker CE edition. For teaching purposes, I want to run 18 times the same container based on a Docker image hosted on DockerHub: https://hub.docker.com/repository/docker/scienceparkstudygroup/master-gls
When I run one container and expose it on the 8787 port, everything runs smoothly and I can access the RStudio instance at my droplet IP address + :8787.
docker run --rm --name rstudio -e PASSWORD=mypwd -p 8787:8787 scienceparkstudygroup/master-gls:openr-latest
My problem is to create multiple instances of the same container but expose it to different ports. I have tried Docker-compose but no success so far.
Any idea? In advance thank you Marc
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
Accepted Answer
Hi there @mgalland,
You would just need to adjust the -p
argument and change the first part from 8787 to the new port that you would like to use.
For example:
- docker run --rm --name rstudio-1 -e PASSWORD=mypwd -p 8787:8787 scienceparkstudygroup/master-gls:openr-latest
- docker run --rm --name rstudio-2 -e PASSWORD=mypwd -p 8788:8787 scienceparkstudygroup/master-gls:openr-latest
Note: Make sure to use different names as well otherwise it would not work.
You could also add Nginx as a reverse proxy to the set up:
Here’s a quick video demo on how to do the above:
Hope that this helps! Regards, Bobby
Hello bobby
Thank you, it worked like a charm.
I am now running my containers with the --detach
option. Still struggling a bit to mount a volume within my machine for each container but I’ll probably figure this out myself.
Thanks again
marc
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.