Use random container names to run multiple instances at the same time

This commit is contained in:
jld3103 2021-08-17 20:42:17 +02:00
parent 89e8091718
commit f3e555f13b

View file

@ -3,6 +3,7 @@ import os
import subprocess import subprocess
import sys import sys
import appdirs import appdirs
import uuid
if os.getenv('KUPFERBOOTSTRAP_DOCKER') == '1': if os.getenv('KUPFERBOOTSTRAP_DOCKER') == '1':
from main import cli from main import cli
@ -44,13 +45,14 @@ else:
'pull', 'pull',
tag, tag,
]) ])
container_name = f'kupferbootstrap-{str(uuid.uuid4())}'
def at_exit(): def at_exit():
subprocess.run( subprocess.run(
[ [
'docker', 'docker',
'kill', 'kill',
'kupferbootstrap', container_name,
], ],
stdout=subprocess.DEVNULL, stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL, stderr=subprocess.DEVNULL,
@ -65,11 +67,11 @@ else:
f'{os.getenv("KUPFERBOOTSTRAP_PREBUILTS")}:/prebuilts:z', f'{os.getenv("KUPFERBOOTSTRAP_PREBUILTS")}:/prebuilts:z',
] ]
subprocess.run([ result = subprocess.run([
'docker', 'docker',
'run', 'run',
'--name', '--name',
'kupferbootstrap', container_name,
'--rm', '--rm',
'--interactive', '--interactive',
'--tty', '--tty',
@ -87,3 +89,5 @@ else:
'/dev:/dev', '/dev:/dev',
#'-v', '/mnt/kupfer:/mnt/kupfer:z', #'-v', '/mnt/kupfer:/mnt/kupfer:z',
] + [tag, 'kupferbootstrap'] + sys.argv[1:]) ] + [tag, 'kupferbootstrap'] + sys.argv[1:])
exit(result.returncode)