Utility to re-run a docker container with slightly different arguments
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Chris Smith 0f2ca13c4d Fail less at markdown il y a 8 ans
.gitignore Add tests. il y a 8 ans
LICENCE.md Initial version il y a 8 ans
README.md Fail less at markdown il y a 8 ans
docker-rerun Add support for modifiers. il y a 8 ans
requirements.txt Add support for links, rework tests. il y a 8 ans
test.py Add support for modifiers. il y a 8 ans

README.md

docker-rerun Build Status

docker-rerun is a small utility script that makes it easy to re-run docker containers using the same arguments you used previously.

Want to update to a newer image, or add a missing port publication? docker-rerun’s got you covered.

Usage

In the most basic usage, you pass in a container name and it will be stopped, deleted and recreated:

$ ./docker-rerun apache

You can also pass additional arguments to modify aspects of the container when it’s rerun. For example, to change the image:

$ ./docker-rerun --image nginx:latest webserver

To check what exactly is going to be performed beforehand, use the --dry-run option:

$ ./docker-rerun --dry-run apache
docker stop apache
docker rm apache
docker run --name=apache -p=80:80/tcp --restart=always apache:latest

What’s supported

At present docker-rerun supports copying a number of commonly used arguments:

  • Commands (trailing arguments)
  • Environment variables (-e/--env)
  • Labels (-l/--label)
  • Links (--link)
  • Names (--name)
  • Networks (--net)
  • Port publications (-p)
  • Restart policies (--restart)
  • User switching (-u/--user)
  • Volumes (-v/--volume, and --volumes-from)

If a container uses an argument that’s not supported yet, it will be silently dropped when rerunning.

The following arguments can be used when executing docker-rerun to modify the resulting container:

  • --image <image> - changes the image that will be used. You can specify tags (name:tag) or digests (name@digest) as with docker run.

What’s not done yet

Many other command line arguments:

  • Network aliases
  • Permissions and policies
  • Advanced networking options

More options to allow mutating the container config when rerunning.