Why docker scrapyd uses Python 2.7 instead of Python 3.7?

Use like a good, updated image vimagick/scrapyd along with thecjw/scrapydweb, .the egg file is built for Python 3.7, and use type annotations. When you boot up .egg in scrapyd error
{
 "auth": null,
 "message": "See details below",
 "node_name": "2d354ebaf1d7",
 "status": "error",
 "status_code": 200,
 "url": "http://scrapyd:6800/addversion.json",
 "when": "2019-06-04 13:28:25"
}

Traceback (most recent call last):
 File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
 "__main__", fname, loader, pkg_name)
 File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
 exec code in run_globals
 File "/usr/local/lib/python2.7/dist-packages/scrapyd/runner.py", line 40, in <module>
main()
 File "/usr/local/lib/python2.7/dist-packages/scrapyd/runner.py", line 37, in main
execute()
 File "/usr/local/lib/python2.7/dist-packages/scrapy/cmdline.py", line 149, in execute
 cmd.crawler_process = CrawlerProcess(settings)
 File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 264, in __init__
 super(CrawlerProcess, self).__init__(settings)
 File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 142, in __init__
 self.spider_loader = _get_spider_loader(settings)
 File "/usr/local/lib/python2.7/dist-packages/scrapy/crawler.py", line 351, in _get_spider_loader
 return loader_cls.from_settings(settings.frozencopy())
 File "/usr/local/lib/python2.7/dist-packages/scrapy/spiderloader.py", line 61, in from_settings
 return cls(settings)
 File "/usr/local/lib/python2.7/dist-packages/scrapy/spiderloader.py", line 25, in __init__
self._load_all_spiders()
 File "/usr/local/lib/python2.7/dist-packages/scrapy/spiderloader.py", line 47, in _load_all_spiders
 for module in walk_modules(name):
 File "/usr/local/lib/python2.7/dist-packages/scrapy/utils/misc.py", line 63, in walk_modules
 mod = import_module(path)
 File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
 File "/tmp/JaAuto-2019-06-04T10_26_36-oRHPI3.egg/JaAuto/spiders/__init__.py", line 17
 def parse(self, response: scrapy.http.HtmlResponse):
^
SyntaxError: invalid syntax

That is logical, because somehow scrapyd decided to use Python 2.7, but in the Dockerfile for this image , there is no hint to use Python 2.7, that is, it uses the third version.

The rest of the images from dockerhub scrapyd clearly outdated and not been updated for several years, how can I resolve this error?
March 23rd 20 at 19:01
1 answer
March 23rd 20 at 19:03
Solution
Hypothesis: because the image is based on Debian and everything is installed using pip instead of pip3.
And that is banal to try to replace pip to pip3 in custom Dockerfile'e? - Lenna commented on March 23rd 20 at 19:06
Right, the problem was resolved by using the image yc7en/scrapyd-py3 - Lenna commented on March 23rd 20 at 19:09

Find more questions by tags DockerScrapyPython