在Ubuntu Linux中执行docker-compose命令时权限被拒绝

9udxz4iz  于 2022-11-02  发布在  Linux
关注(0)|答案(3)|浏览(245)

我在Ubuntu Linux 20.04LTS中安装了Docker引擎和Docker合成。

ubuntu@ip-10-0-2-13:~/myapp/src$ docker-compose -v
docker-compose version 1.27.4, build 40524192

我还运行了beloe命令以使docker-compose可执行

ubuntu@ip-10-0-2-13:~/myapp/src$ sudo chmod +x /usr/local/bin/docker-compose

但是当我执行docker-compose命令时,仍然得到权限被拒绝的错误。

ubuntu@ip-10-0-2-13:~/myapp/src$ docker-compose down
WARNING: The VERSION_TAG variable is not set. Defaulting to a blank string.
Traceback (most recent call last):
  File "urllib3/connectionpool.py", line 677, in urlopen
  File "urllib3/connectionpool.py", line 392, in _make_request
  File "http/client.py", line 1252, in request
  File "http/client.py", line 1298, in _send_request
  File "http/client.py", line 1247, in endheaders
  File "http/client.py", line 1026, in _send_output
  File "http/client.py", line 966, in send
  File "docker/transport/unixconn.py", line 43, in connect
PermissionError: [Errno 13] Permission denied

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "requests/adapters.py", line 449, in send
  File "urllib3/connectionpool.py", line 727, in urlopen
  File "urllib3/util/retry.py", line 403, in increment
  File "urllib3/packages/six.py", line 734, in reraise
  File "urllib3/connectionpool.py", line 677, in urlopen
  File "urllib3/connectionpool.py", line 392, in _make_request
  File "http/client.py", line 1252, in request
  File "http/client.py", line 1298, in _send_request
  File "http/client.py", line 1247, in endheaders
  File "http/client.py", line 1026, in _send_output
  File "http/client.py", line 966, in send
  File "docker/transport/unixconn.py", line 43, in connect
urllib3.exceptions.ProtocolError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "docker/api/client.py", line 205, in _retrieve_server_version
  File "docker/api/daemon.py", line 181, in version
  File "docker/utils/decorators.py", line 46, in inner
  File "docker/api/client.py", line 228, in _get
  File "requests/sessions.py", line 543, in get
  File "requests/sessions.py", line 530, in request
  File "requests/sessions.py", line 643, in send
  File "requests/adapters.py", line 498, in send
requests.exceptions.ConnectionError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "bin/docker-compose", line 3, in <module>
  File "compose/cli/main.py", line 67, in main
  File "compose/cli/main.py", line 123, in perform_command
  File "compose/cli/command.py", line 69, in project_from_options
  File "compose/cli/command.py", line 132, in get_project
  File "compose/cli/docker_client.py", line 43, in get_client
  File "compose/cli/docker_client.py", line 170, in docker_client
  File "docker/api/client.py", line 188, in __init__
  File "docker/api/client.py", line 213, in _retrieve_server_version
docker.errors.DockerException: Error while fetching server API version: ('Connection aborted.', PermissionError(13, 'Permission denied'))
[19602] Failed to execute script docker-compose

你能帮忙解决这个问题吗?

nhaq1z21

nhaq1z211#

如果您想在没有root权限的情况下运行该服务,则应阅读https://docs.docker.com/engine/install/linux-postinstall/
您可以使用sudo usermod -aG docker $USER将用户添加到Docker组
然后您注销并登录,您就可以开始了!

fdbelqdn

fdbelqdn2#

您是否尝试过使用sudo运行docker-compose up命令?
例如:sudo docker-组成

mzsu5hc0

mzsu5hc03#

我也在纠结这个问题。
我不想使用sudo,因为容器不会显示在Docker Desktop中。(Docker Desktop in Ubuntu not showing containers those are build with sudo privilege
然后我发现“dockercompose”(没有破折号)是“docker-compose”(Difference between "docker compose" and "docker-compose")的更新版本。
使用“docker compose”,它可以在没有权限被拒绝的情况下工作。

相关问题