In den Anweisungen zur Installation von docker-compose können Sie Folgendes tun:
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
Aber Sie können es nicht installieren, weil:
zsh: permission denied: /usr/local/bin/docker-compose
Ich möchte kein Sudo machen, weil ich wollte, dass es so ist wie bei meinen vorherigen Installationen und der Verwendung von Docker
docker <command>
Kein Sudo...
Wie stellt man es richtig ein?
Ich glaube du meintest https://github.com/docker/compose. @aanand ?
Höchstwahrscheinlich ist Ihr /usr/local/bin
Verzeichnis für Sie nicht beschreibbar. Entweder chmod
/ chown
oder docker-compose
irgendwo beschreibbar und sudo cp
herunterladen.
Sie benötigen nicht sudo
, um es auszuführen, sondern nur um es zu installieren.
Ich habe dieses Problem auch und ich bin ein bisschen Linux-Neuling :) Kann mir jemand helfen?
@luisrudge für komponieren oder maschinell?
Oh, das tut mir leid! Es ist zum Komponieren!
@luisrudge ok np :) dagegen, wenn ich dieses schließe?
Jawohl! Vielen Dank!
Ich habe das gleiche Problem mit dem Docker-Computer, bitte leiten Sie mich zur Lösung @ehazlett . weiter
@joeyhipolito @aanand bitte um Hilfe
@tarun6006 Das Problem/die Lösung ist wahrscheinlich das gleiche:
Höchstwahrscheinlich ist Ihr
/usr/local/bin
Verzeichnis für Sie nicht beschreibbar. Entwederchmod
/chown
oderdocker-machine
irgendwo beschreibbar undsudo cp
herunterladen.Sie benötigen nicht
sudo
, um es auszuführen, sondern nur um es zu installieren.
in Eingabe beenden sudo chown -R $(whoami) /usr/local/bin
Oh danke @zhangqinghe es hat das Problem für mich behoben
Ich fand diesen Ansatz einfacher.
@zhangqinghe das löst das Problem. Danke.
Mir hat sudo -i vor, das Problem gelöst.
@zhangqinghe danke. das löst mein problem.
bitte eintippen
sudo chmod -Rf 777 /usr/local/bin
es ist Arbeit
Bitte mach das nicht. Dies führt zu weitreichenden Berechtigungsänderungen, die wahrscheinlich den Rahmen dessen überschreiten, was Sie tatsächlich erreichen möchten.
sudo chown -R $(whoami) /usr/local/bin
Bitte tun Sie dies auch NICHT (es ändert den Besitzer jeder einzelnen Datei rekursiv in /usr/local/bin
auf den Benutzer, unter dem Sie gerade laufen). Es ist VIEL übertrieben. Ich kann das nicht genug betonen.
Wenn Sie so etwas tun, wird es Ihnen wahrscheinlich irgendwann in die Luft gehen. In /usr/local/bin
auf meinem Mac gehören einige Dateien nathanleclaire
und einige gehören root
. Die Programme, die sie dorthin bringen und sich auf sie verlassen, erwarten wahrscheinlich, dass dies so bleibt. Der oben vorgeschlagene Befehl wird diese sorgfältig angelegten Dateibesitzer vollständig dezimieren.
Ziehen Sie stattdessen bei Bedarf diese Art von Operation in Betracht. Speichern Sie die Datei in einem eigenen Verzeichnis und dann cp
/ mv
.
$ 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
Viel sicherer mit viel weniger weitreichenden Folgen.
Aus der Docker- Dokumentation:
Hinweis: Wenn Sie die Fehlermeldung „Berechtigung verweigert“ erhalten, ist Ihr Verzeichnis /usr/local/bin wahrscheinlich nicht beschreibbar und Sie müssen Compose als Superuser installieren. Führen Sie sudo -i aus, dann die beiden folgenden Befehle und beenden Sie dann
Nathanleclaire Vorschlag hat bei mir funktioniert. Vielen Dank
Google bringt mich hierher....
Bitte, bitte BITTE... verwenden Sie die @nathanleclaire- Lösung
Was ist damit:
Wenn Sie Docker als Nicht-Root-Benutzer verwenden möchten, sollten Sie jetzt überlegen
Hinzufügen Ihres Benutzers zur Gruppe "docker" mit etwas wie:
sudo usermod -aG docker your-user
Ist das eine gute Idee?
Stellen Sie sicher, dass docker-compose ausführbar ist (chmod +x /usr/local/bin/docker-compose)
Sie müssen sich nicht mit den Berechtigungen für alle Dateien in /usr/local/bin
TU es nicht
sudo chown -R $(whoami) /usr/local/bin
Mach das stattdessen
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
Bitte verwenden Sie die Lösung von
Stellen Sie sicher, dass docker-compose ausführbar ist (chmod +x /usr/local/bin/docker-compose)
das funktionierte unter Ubuntu 18.04
Ich fand diesen Ansatz einfacher.
das hat bei mir funktioniert :D
Mir hat sudo -i vor, das Problem gelöst.
Dies (oder eine der anderen, die sudo -i
erwähnen) sollte die akzeptierte Antwort sein und nicht die gesamte /usr/local/bin
Für was es wert ist: Der permission denied: docker-compose
Fehler trat bei mir nach einem Upgrade von Docker auf. Eine Minute zuvor funktionierte noch alles einwandfrei, also waren meine Berechtigungen alle in Ordnung.
Nachdem ich die (jetzt aktualisierte) Docker-Desktop-Anwendung gestartet und auf Nachfrage nach meinem Administrator-Passwort autorisiert habe, war der Fehler weg. Also hat Docker die Berechtigungen selbst repariert.
Dieser Code allein kann dieses Problem lösen
sudo chmod +x /usr/local/bin/docker-compose
Hilfreichster Kommentar
in Eingabe beenden
sudo chown -R $(whoami) /usr/local/bin