Error on command: docker run direvius/yandex-tank

830 views Asked by At

I just started with yandex-tank, and has failed at first step.

I am trying to execute command

docker run direvius/yandex-tank

And got an error:

Traceback (most recent call last):
  File "/usr/local/bin/yandex-tank", line 11, in <module>
    load_entry_point('yandextank==1.12.1', 'console_scripts', 'yandex-tank')()
  File "/usr/local/lib/python2.7/dist-packages/yandextank/core/cli.py", line 130, in main
    log_handlers=handlers
  File "/usr/local/lib/python2.7/dist-packages/yandextank/core/consoleworker.py", line 327, in __init__
    self.config_list = self._combine_configs(configs, cli_options, cfg_patches, cli_args, no_local)
  File "/usr/local/lib/python2.7/dist-packages/yandextank/core/consoleworker.py", line 354, in _combine_configs
    parse_and_check_patches(cfg_patches) + \
  File "/usr/local/lib/python2.7/dist-packages/yandextank/core/consoleworker.py", line 77, in load_cfg
    with open(cfg_filename) as f:
IOError: [Errno 2] No such file or directory: 'load.yaml'

My enviroment is Windows. And I am don't understand how can I add load.yaml without running container? And I can't run container without load.yaml

1

There are 1 answers

0
AudioBubble On

yandex-tank uses load.yaml in the directory as the default config file. However, the image of the container doesn't have such file https://github.com/yandex/yandex-tank/blob/develop/docker/Dockerfile.

Given that its entrypoint launches yandex-tank right away, I guess you will need to create a new image, using as base FROM direvius/yandex-tank, and COPY your configuration to this image, either as the default value load.yaml, or with a different name / path (in this case, you must use -c option when running the image).

You cannot run direvius/yandex-tank and then docker cp load.yaml <container_path>, because since the very moment you run the container, it crashes with the error you got.