{ "info": { "author": "Victor Lin", "author_email": "hello@victorlin.me", "bugtrack_url": null, "classifiers": [], "description": "Rundocker\n=========\n\nA script for running docker container process\n\nThe issue we are solving here\n=============================\n\nSince docker 0.6, you can actually run docker container like normal process\n\n```\ndocker run --rm foobar\n```\n\nwhen you press Ctrl + C, docker client will proxy the INT signal for you to the docker container, as a result, container will be terminated. However, in many cases, docker container will not be closed correctly, even the docker client process is stopped. For example, when you tried to run a container with an used port, the run command will fail, however, somehow the docker container will not be removed, and it causes following run commands fail\n\n```\n2014/07/27 03:24:45 Error response from daemon: Cannot start container 08b25a41e30be78410a2556ffe01e720ff0d7bd512a53e8a44d7bceb8d3cf83e: Bind for 172.17.42.1:5050 failed: port is already allocated\n2014/07/27 03:24:46 Error response from daemon: Conflict, The name foobar is already assigned to 08b25a41e30b. You have to delete (or rename) that container to be able to assign foobar to a container again.\n2014/07/27 03:24:48 Error response from daemon: Conflict, The name foobar is already assigned to 08b25a41e30b. You have to delete (or rename) that container to be able to assign foobar to a container again.\n....\n```\n\nThere is an [issue #7245](https://github.com/docker/docker/issues/7245) describes the problem. If new feature is added, I think we can drop the project then.\n\nInstallation\n============\n\nYou can install it via\n\n```\npip install rundocker\n```\n\nSince it only has [one Python script file](https://github.com/victorlin/rundocker/blob/master/rundocker/__main__.py), you can actually copy the script to a file and make it executalbe.\n\nUsage\n=====\n\nUse rundocker to run docker with a name as you usually do\n\n```\nsudo rundocker --rm --name=\"foobar\" eggs/spam\n```\n\nIn many cases, containers are not removed correctly even the docker run process\nis already terminated. Then when you try to run container with the same name,\nit will keep telling you there is already one container with the same name. \nThis is pretty annoying, and it breaks automatic deployment.\nTo address the issue, you would probably like to add `--force-rm`\nargument. It will force to remove existing container with the same name even\nit is running before rundocker runs the new container. For example:\n\n```\nsudo rundocker --rm --force-rm --name=\"foobar\" eggs/spam\n```\n\nHow it works\n============\n\nThe script looks into existing docker containers, if there is a dead container\nwith the same name, it will remove it for you. However, if the existing \ncontainer is still running, and error will be raised.\n\nWhen the script receives INT signal, it will stop the container.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/victorlin/rundocker", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "rundocker", "package_url": "https://pypi.org/project/rundocker/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/rundocker/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/victorlin/rundocker" }, "release_url": "https://pypi.org/project/rundocker/1.0.3/", "requires_dist": null, "requires_python": null, "summary": "A script for running docker container process without worrying about dead container issue", "version": "1.0.3" }, "last_serial": 1238363, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "b53f19990d764538809978cea84bb200", "sha256": "6f1c70091afba643c309d1f2c29ae1ea4a7948f5d67316e7a97b72d6e579d40f" }, "downloads": -1, "filename": "rundocker-1.0.0.tar.gz", "has_sig": false, "md5_digest": "b53f19990d764538809978cea84bb200", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9696, "upload_time": "2014-07-27T05:11:00", "url": "https://files.pythonhosted.org/packages/2c/35/379af086e5620192fde4fa4ec088346c08136432968c8fbb39b56a5819f0/rundocker-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "f6b893ee4dcc825f5aec237785cf48c9", "sha256": "87eea463293557d13198557b7c4679387d29bb780718dd412e5beee33f6f404c" }, "downloads": -1, "filename": "rundocker-1.0.1.tar.gz", "has_sig": false, "md5_digest": "f6b893ee4dcc825f5aec237785cf48c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9744, "upload_time": "2014-07-27T05:51:33", "url": "https://files.pythonhosted.org/packages/67/60/166085ab4718b2bf3ccadb64dd41829a8c590ca6e26f8584da6826a1c96d/rundocker-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "ed74acc28b5bbf075997a5071cc2e095", "sha256": "6dab85f85b2c1e4f515200ea982c46c3baf1d145d195ded5af29bea5e44afa53" }, "downloads": -1, "filename": "rundocker-1.0.2.tar.gz", "has_sig": false, "md5_digest": "ed74acc28b5bbf075997a5071cc2e095", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9993, "upload_time": "2014-08-10T04:45:25", "url": "https://files.pythonhosted.org/packages/ae/28/4b7043812624bc8f6bfa55d33ee808432db95c91064318fe4309119eef8c/rundocker-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "b976190f604c425c21d0d7d6aac41e69", "sha256": "ede5bf5d3899114a742886fdc9758dfe58919dbb5986f7bb3907096c0e775bd5" }, "downloads": -1, "filename": "rundocker-1.0.3.tar.gz", "has_sig": false, "md5_digest": "b976190f604c425c21d0d7d6aac41e69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10002, "upload_time": "2014-09-26T01:38:03", "url": "https://files.pythonhosted.org/packages/3f/ec/439efdce01399cace14645b1ef3a21cf899900991de568bdfa8b727bb27b/rundocker-1.0.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b976190f604c425c21d0d7d6aac41e69", "sha256": "ede5bf5d3899114a742886fdc9758dfe58919dbb5986f7bb3907096c0e775bd5" }, "downloads": -1, "filename": "rundocker-1.0.3.tar.gz", "has_sig": false, "md5_digest": "b976190f604c425c21d0d7d6aac41e69", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10002, "upload_time": "2014-09-26T01:38:03", "url": "https://files.pythonhosted.org/packages/3f/ec/439efdce01399cace14645b1ef3a21cf899900991de568bdfa8b727bb27b/rundocker-1.0.3.tar.gz" } ] }