Deploy a docker container to production

I have create a docker image on my dev machine and tested my RAILS code on it.
The container uses code from the host this way :

docker run -v [/path/to/dir/to/mount/on/local/machine/]:[/desired/path/in/docker/] -p [port to forward] -i -t [name of image] /bin/bash

Now I would like to push the container to a preproduct environment and then a production environment.

  • Why is git clone failing when I build an image from a dockerfile?
  • Compile docker on armv7
  • Handling “breaking” changes in docker images
  • Docker Swarm Cluster: daemonize
  • How to docker-compose run in windows?
  • docker-machine fails to start host
  • What is the best way to do that ?
    Should I install docker on the preprod/prod servers and then use the image ?

    Or should I configure my staging to be identitical to my image and upload my source code ?

  • Is it possible to share memory between docker containers?
  • How to create a base CoreOS image and build custom parent images based on it
  • Docker, and small production server infrastructure advices
  • Docker remote api don't restart after my computer restart
  • Docker :- Creating Databases in Postgresql Docker Container
  • Creating docker images with java application [closed]
  • One Solution collect form web for “Deploy a docker container to production”

    Are you deploying a rails app? I would take a look at Dokku which is basically a self hosted version of heroku.

    If you want to use docker directly I would take a look at using a deployment script of some type to help you with this. Basically it can login via ssh, git clone the code to a directory and then run the docker image with the new directory (stopping any existing instances). But again Dokku makes this way simpler.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.