docker.py 571 B

1234567891011121314151617181920
  1. """
  2. Docker support
  3. @author: olivier.massot, 05-2020
  4. """
  5. import subprocess
  6. from subprocess import Popen, PIPE
  7. def resolve_docker_ip(docker_name):
  8. cmd = ["docker",
  9. "inspect",
  10. "-f",
  11. "'{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'",
  12. docker_name]
  13. try:
  14. output = subprocess.check_output(cmd)
  15. except subprocess.CalledProcessError as e:
  16. raise RuntimeError("An error occured while retrieving IP for docker %s: %s", docker_name, e)
  17. return output.decode('utf-8').strip('\n').replace("'", "")