找不到FastAPI docker-compose文件错误 版本:运行的命令:错误

问题描述

我必须运行一个full-stack-fastapi-postgresql生成的项目,而我停留在启动应用程序的第一步:docker-compose up -d抛出FileNotFoundError。
我很确定这不是一个难题或问题,只是我缺少了一些东西,但我不知道为什么。看到命令运行版本,我很确定我的错误在这里

版本:

Docker version 19.03.13,build 4484c46
docker-compose version 1.27.4,build unkNown
Poetry version 1.1.4

运行的命令:

pip install cookiecutter

在上面的部分中,我开始下载并响应写的所有要求(我刚刚输入“ Test”作为名称,并为每个要求输入的密码输入openssl rand -hex 32

$ cookiecutter https://github.com/tianGolo/full-stack-fastapi-postgresql
You've downloaded /Users/jojomoon/.cookiecutters/full-stack-fastapi-postgresql before. Is it okay to delete and re-download it? [yes]: yes
project_name [Base Project]: Test
project_slug [test]: 
domain_main [test.com]: 
domain_staging [stag.test.com]: 
docker_swarm_stack_name_main [test-com]: 
docker_swarm_stack_name_staging [stag-test-com]: 
secret_key [changethis]: 1280bf10bc3ebdf435834b2fc98e098144700bd27dfc43f62c2dcdd52741a5ac
first_superuser [admin@test.com]: 
first_superuser_password [changethis]: 81ec188f2f509483aeb7d877376220e81b5e4e1694fc4b1ee11028c923e340e8
backend_cors_origins [["http://localhost","http://localhost:4200","http://localhost:3000","http://localhost:8080","https://localhost","https://localhost:4200","https://localhost:3000","https://localhost:8080","http://dev.test.com","https://stag.test.com","https://test.com","http://local.dockertoolBox.tianGolo.com","http://localhost.tianGolo.com"]]: 
smtp_port [587]: 
smtp_host []: 
smtp_user []: 
smtp_password []: 
smtp_emails_from_email [info@test.com]: 
postgres_password [changethis]: 39f987c0f2e31a2a594f07eb0e67e2e15766f5a9f93062fc37d0ea66c908279f
pgadmin_default_user [admin@test.com]: 
pgadmin_default_user_password [81ec188f2f509483aeb7d877376220e81b5e4e1694fc4b1ee11028c923e340e8]: 
traefik_constraint_tag [test.com]: 
traefik_constraint_tag_staging [stag.test.com]: 
traefik_public_constraint_tag [traefik-public]: 
flower_auth [admin:81ec188f2f509483aeb7d877376220e81b5e4e1694fc4b1ee11028c923e340e8]: 
sentry_dsn []: 
docker_image_prefix []: 
docker_image_backend [backend]: 
docker_image_celeryworker [celeryworker]: 
docker_image_frontend [frontend]: 

错误

生成的README.md中,他们说要安装docker,docker-compose和poetry。之后,我启动docker-compose up -d以启动项目,然后...(显示一个错误和最后一行,如果需要,可以更多)。

jojomoon at MacBook-Pro-de-Johann in ~/Desktop/entretien/test 
$ docker-compose up -d
Traceback (most recent call last):
    File "/usr/local/Cellar/docker-compose/1.27.4_1/libexec/lib/python3.9/site-packages/urllib3/connectionpool.py",line 670,in urlopen
    httplib_response = self._make_request(
  File "/usr/local/Cellar/docker-compose/1.27.4_1/libexec/lib/python3.9/site-packages/urllib3/connectionpool.py",line 392,in _make_request
    conn.request(method,url,**httplib_request_kw)
  File "/usr/local/Cellar/python@3.9/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py",line 1255,in request
    self._send_request(method,body,headers,encode_chunked)
  File "/usr/local/Cellar/python@3.9/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py",line 1301,in _send_request
    self.endheaders(body,encode_chunked=encode_chunked)
  File "/usr/local/Cellar/python@3.9/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py",line 1250,in endheaders
    self._send_output(message_body,line 1010,in _send_output
    self.send(msg)
  File "/usr/local/Cellar/python@3.9/3.9.0_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/http/client.py",line 950,in send
    self.connect()
  File "/usr/local/Cellar/docker-compose/1.27.4_1/libexec/lib/python3.9/site-packages/docker/transport/unixconn.py",line 43,in connect
    sock.connect(self.unix_socket)
FileNotFoundError: [Errno 2] No such file or directory

During handling of the above exception,another exception occurred:
  ...
 
  File "/usr/local/Cellar/docker-compose/1.27.4_1/libexec/lib/python3.9/site-packages/docker/api/client.py",line 212,in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.',FileNotFoundError(2,'No such file or directory'))

请问我做错了什么?我是否必须在一开始就填写所有要求的值?我还没有全部,我只想在本地运行此样板)

解决方法

您是否正确设置了docker / virtualbox?例如,对于MacOS,有一个描述here。 TL; DR复制到此处:

$ brew install docker docker-machine
$ brew cask install virtualbox
-> need password
-> possibly need to address System Preference setting
$ docker-machine create --driver virtualbox default
$ docker-machine env default
$ eval "$(docker-machine env default)"
$ docker run hello-world