view docker/base/scripts/add_host @ 116:d0a5db5b9bdf

docker: fixed bad stopping: - use exec when it was missing, so the TERM signal is properly catched, and containers can be stopped instead of being killed after 10s - for a unknown reason, exec and su don't handle correctly "$@" with Docker in base.scripts/sat. It's working as expected when launched from withing a running container, but not when launched with "docker run", so a workaround is used with trap and wait
author Goffi <goffi@goffi.org>
date Fri, 04 Mar 2016 23:31:26 +0100
parents b69056368901
children 12cb931dbea0
line wrap: on
line source

#!/usr/bin/env python2
# this script add aliases to /etc/hosts
import sys, re

if len(sys.argv) < 2 or len(sys.argv) > 3:
    sys.exit(1)

host = sys.argv[1]
alias = sys.argv[2] if len(sys.argv) == 3 else "localhost"

if host == "localhost" or host == alias:
    sys.exit(0)

print "Adding host {} as an alias of {}".format(host, alias)
with open("/etc/hosts", "r+") as f:
    buf = re.sub(r"\\b{}\\b".format(alias), "{}\\t{}".format(alias, host), f.read(), 1)
    f.seek(0)
    f.write(buf)