У меня есть Docker-контейнер, в котором выполняется скрипт Python. Сценарий Python должен периодически запускать экземпляр ns1labs/flame. Он создает выходной файл flame.out.json. Этот файл должен быть прочитан Docker-контейнером, который запустил экземпляр Flame.
docker-compose.yml:
services:
container1:
...
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./output:/output
main.py (начало с контейнера 1):
flamethrower_command = [
server,
"-q", "10",
"-v", "0",
"-t", "10",
"-Q", "8194",
"-l", "10"
] # Adjust Flamethrower parameters as needed
output_file = "flame.out.json"
output_dir = "/output"
output_path = os.path.join(output_dir, output_file)
flamethrower_command += ["-o", output_path]
try:
client = docker.from_env()
container = client.containers.run(
"ns1labs/flame",
command=flamethrower_command,
volumes={os.path.abspath(output_dir): {'bind': output_dir, 'mode': 'rw'}},
remove=True, # Automatically remove the container when it exits
network="host"
)
with open(output_path, 'r') as file: # Getting FileNotFoundError here
print(file.read().splitlines())
except Exception as ex:
print(ex)
Подробнее здесь: https://stackoverflow.com/questions/787 ... -in-docker