Korrektur der lokalen Bildveröffentlichung auf MacOs
Präambel:
Ich verwende immer noch den Docker-Desktop, um Container auf meinem MacBook Air auszuführen. Ich weiß, dass es Colima gibt, aber ich habe keine Zeit, umzuziehen und mich mit den Konsequenzen auseinanderzusetzen.
Ich habe vor kurzem auch damit begonnen, ko für die Containerisierung meiner Go-Apps zu verwenden.
ko ist großartig, aber...
Ich liebe ko – es erstellt verteilungsfreie, sichere und schlanke Bilder. Es gibt jedoch ein Problem: Standardmäßig schiebt ko build das resultierende Image in die Remote-Registrierung.
Für die kontinuierliche Bereitstellung ist es einigermaßen in Ordnung, aber ich experimentiere viel und möchte nicht immer den ganzen Müll, den ich erstelle, auf Remote-Geräten veröffentlichen – ich versuche, Rücksicht auf Netzwerkbandbreite und Bildspeicher zu nehmen.
Stattdessen möchte ich meine Bilder im lokalen Bildspeicher erstellen.
Mit ko build ist das möglich. -L
Nur dass dies auf MacOs für mich mit folgendem Fehler fehlschlug:
2024/07/22 15:52:50 Loading otomato/myapp:717e6196339c956bc878bd58f5ab8244a709dc0510051f9e6df72620f28a2aaa 2024/07/22 15:52:50 daemon.Write response: Error: failed to publish images: error publishing ko://github.com/otomato/myapp: error loading image: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
Aufruf des Docker-Daemons
Offensichtlich versucht der Docker-Client in ko, den Docker-Daemon über den Standard-Socket zu kontaktieren, was jedoch fehlschlägt.
Ich habe versucht, nach diesem Fehler zu googeln, habe aber nichts gefunden. Also habe ich beschlossen, es selbst zu lösen.
Hier ist die Sache: Unter MacOS ist der Docker-Socket nicht der Standard-/var/run/docker.sock, sondern er befindet sich unter ~/Library/Containers/com.docker.docker/Data/docker.raw.sock
Die Lösung
Um dies zu beheben, musste ich einen symbolischen Link vom tatsächlichen Docker-Socket zu der Stelle erstellen, an der der Standard-Docker-Client ihn erwartet:
sudo ln -s ~/Library/Containers/com.docker.docker/Data/docker.raw.sock /var/run/docker.sock
Jetzt kann der Docker-Daemon über die Standard-Socket-Adresse kontaktiert werden – ko kann Bilder dorthin pushen:
ko build . -B -L --platform linux/arm64 2024/07/22 16:04:04 Building github.com/otomato/myapp for linux/arm64 2024/07/22 16:04:04 Loading otomato/myapp:717e6196339c956bc878bd58f5ab8244a709dc0510051f9e6df72620f28a2aaa 2024/07/22 16:04:05 Loaded otomato/myapp:717e6196339c956bc878bd58f5ab8244a709dc0510051f9e6df72620f28a2aaa 2024/07/22 16:04:05 Adding tag latest 2024/07/22 16:04:05 Added tag latest otomato/myapp:717e6196339c956bc878bd58f5ab8244a709dc0510051f9e6df72620f28a2aaa
Mittlerweile habe ich auch eine Ausgabe im Ko-Repo eröffnet. Aber bis es behoben ist, funktioniert dieser Hack wie ein Zauber.
Ich hoffe, das hilft dir auch.
Das obige ist der detaillierte Inhalt vonKorrektur der lokalen Bildveröffentlichung auf MacOs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

OpenSSL bietet als Open -Source -Bibliothek, die in der sicheren Kommunikation weit verbreitet sind, Verschlüsselungsalgorithmen, Tasten und Zertifikatverwaltungsfunktionen. In seiner historischen Version sind jedoch einige Sicherheitslücken bekannt, von denen einige äußerst schädlich sind. Dieser Artikel konzentriert sich auf gemeinsame Schwachstellen und Antwortmaßnahmen für OpenSSL in Debian -Systemen. DebianopensL Bekannte Schwachstellen: OpenSSL hat mehrere schwerwiegende Schwachstellen erlebt, wie z. Ein Angreifer kann diese Sicherheitsanfälligkeit für nicht autorisierte Lesen sensibler Informationen auf dem Server verwenden, einschließlich Verschlüsselungsschlüssel usw.

Wie kann man im Beegoorm -Framework die mit dem Modell zugeordnete Datenbank angeben? In vielen BeEGO -Projekten müssen mehrere Datenbanken gleichzeitig betrieben werden. Bei Verwendung von BeEGO ...

Backend Learning Path: Die Erkundungsreise von Front-End zu Back-End als Back-End-Anfänger, der sich von der Front-End-Entwicklung verwandelt, Sie haben bereits die Grundlage von Nodejs, ...

Was soll ich tun, wenn die benutzerdefinierten Strukturbezeichnungen in Goland nicht angezeigt werden? Bei der Verwendung von Goland für GO -Sprachentwicklung begegnen viele Entwickler benutzerdefinierte Struktur -Tags ...

In der Bibliothek, die für den Betrieb der Schwimmpunktnummer in der GO-Sprache verwendet wird, wird die Genauigkeit sichergestellt, wie die Genauigkeit ...

Das Problem der Warteschlange Threading In Go Crawler Colly untersucht das Problem der Verwendung der Colly Crawler Library in Go -Sprache. Entwickler stoßen häufig auf Probleme mit Threads und Anfordern von Warteschlangen. � ...

Das Problem der Verwendung von RETISTREAM zur Implementierung von Nachrichtenwarteschlangen in der GO -Sprache besteht darin, die Go -Sprache und Redis zu verwenden ...

In diesem Artikel wird vorgestellt, wie MongoDB im Debian -System konfiguriert wird, um eine automatische Expansion zu erzielen. Die Hauptschritte umfassen das Einrichten der MongoDB -Replikat -Set und die Überwachung des Speicherplatzes. 1. MongoDB Installation Erstens stellen Sie sicher, dass MongoDB im Debian -System installiert ist. Installieren Sie den folgenden Befehl: sudoaptupdatesudoaptinstall-emongoDB-org 2. Konfigurieren von MongoDB Replika-Set MongoDB Replikate sorgt für eine hohe Verfügbarkeit und Datenreduktion, was die Grundlage für die Erreichung der automatischen Kapazitätserweiterung darstellt. Start MongoDB Service: SudosystemctlstartMongodsudosysys
