Machine: Вопрос: Отказано в доступе для curl и сохранения для docker compose

Созданный на 27 февр. 2015  ·  30Комментарии  ·  Источник: docker/machine

В инструкции по установке docker-compose можно:

curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Но вы не можете его ввести, потому что:

zsh: permission denied: /usr/local/bin/docker-compose

Я не хочу делать sudo, потому что хотел, чтобы это было похоже на мои предыдущие установки и использование докера

docker <command>

Нет sudo ...

Как правильно его настроить?

Самый полезный комментарий

в завершение ввода sudo chown -R $(whoami) /usr/local/bin

Все 30 Комментарий

Я полагаю, вы имели в виду https://github.com/docker/compose. @aanand ?

Скорее всего, ваш каталог /usr/local/bin не доступен для записи. Либо chmod / chown it, либо загрузите docker-compose где-нибудь для записи и sudo cp это.

Вам не понадобится sudo для его запуска, просто чтобы установить.

У меня тоже есть эта проблема, и я вроде как новичок в Linux :) Кто-нибудь может мне помочь?

@luisrudge для сочинения или машины?

Ой, извини! Это для сочинения!

@luisrudge ok np :) Не закрою это?

Да! Спасибо!

У меня такая же проблема с докером, пожалуйста, перенаправьте меня на решение @ehazlett

@joeyhipolito @ aanи любезно помогите

@ tarun6006 Проблема / решение, скорее всего, та же:

Скорее всего, ваш каталог /usr/local/bin не доступен для записи. Либо chmod / chown it, либо загрузите docker-machine где-нибудь для записи и sudo cp это.

Вам не понадобится sudo для его запуска, просто чтобы установить.

в завершение ввода sudo chown -R $(whoami) /usr/local/bin

О, спасибо, @zhangqinghe, проблема решена.

Мне этот подход показался проще.

@zhangqinghe это решает проблему. Благодарю.

Для меня sudo -i раньше решил проблему.

@zhangqinghe, спасибо. это решает мою проблему.

пожалуйста напечатайте
sudo chmod -Rf 777 / usr / local / bin
это работает

Пожалуйста, не делай этого. Это будет иметь далеко идущие изменения разрешений, которые, вероятно, выходят за рамки того, что вы действительно хотели бы выполнить.

sudo chown -R $ (whoami) / usr / local / bin

Пожалуйста, НЕ делайте этого (это изменит владельца каждого файла рекурсивно в /usr/local/bin на пользователя, от имени которого вы в настоящее время работаете). Это ПУТЬ перебор. Я не могу этого достаточно подчеркнуть.

Если вы сделаете что-то подобное, очень вероятно, что в конечном итоге вы взорветесь перед лицом. В /usr/local/bin на моем Mac некоторые файлы принадлежат nathanleclaire а некоторые - root . Программы, которые помещают их туда и полагаются на них, вероятно, ожидают, что так и останется. Предлагаемая выше команда полностью уничтожит эти тщательно продуманные права собственности на файлы.

Вместо этого, при необходимости, рассмотрите этот тип операции. Сохраните файл в каталог, которым вы владеете, а затем cp / mv it.

$ curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` \
    >~/docker-compose
$ chmod +x ~/docker-compose
$ sudo mv ~/docker-compose /usr/local/bin/docker-compose

Намного безопаснее с гораздо менее далеко идущими последствиями.

Из документации Docker

Примечание. Если вы получаете сообщение об ошибке «Permission denied», вероятно, ваш каталог / usr / local / bin недоступен для записи, и вам необходимо установить Compose как суперпользователь. Запустите sudo -i, затем две приведенные ниже команды и выйдите.

Предложение nathanleclaire сработало для меня. Спасибо

Google приводит меня сюда ....

ПОЖАЛУЙСТА, ПОЖАЛУЙСТА ... используйте решение @nathanleclaire

Как насчет этого:
Если вы хотите использовать Docker как пользователь без полномочий root, вам следует подумать о
добавление вашего пользователя в группу "docker" с помощью чего-то вроде:

sudo usermod -aG docker ваш-пользователь
Это хорошая идея?

убедитесь, что docker-compose исполняемый (chmod + x / usr / local / bin / docker-compose)

Не нужно путаться с разрешениями для всех файлов внутри /usr/local/bin
Не делай

sudo chown -R $ (whoami) / usr / local / bin

Сделай это вместо этого

sudo -i
curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod 755 /usr/local/bin/docker-compose
exit

Пожалуйста, используйте решение @nathanleclaire , оно мне очень

убедитесь, что docker-compose исполняемый (chmod + x / usr / local / bin / docker-compose)

это работало на Ubuntu 18.04

Мне этот подход показался проще.

это сработало для меня: D

Для меня sudo -i раньше решил проблему.

Этот (или любой другой, упоминающий sudo -i ) должен быть принятым ответом, а не просто перерезать весь / usr / local / bin

Чего стоит: ошибка permission denied: docker-compose возникла у меня после обновления Docker. Минутой ранее все по-прежнему работало нормально, поэтому с моими разрешениями все в порядке.

После того, как я запустил (теперь обновленное) настольное приложение Docker и авторизовал его при запросе пароля администратора, ошибка исчезла. Итак, Docker исправил разрешения сам.

Только этот код может решить эту проблему
sudo chmod +x /usr/local/bin/docker-compose

Была ли эта страница полезной?
0 / 5 - 0 рейтинги