Transfert de socket Docker
Utilisez un tunnel SSH Secure Pipes pour accéder à un socket Docker distant depuis votre Mac ou à un socket local depuis un hôte distant.
Avant de commencer
L'accès au socket Docker accorde un contrôle puissant sur l'hôte Docker, souvent équivalent à un accès administrateur. Utilisez uniquement des adresses de bouclage, n'exposez jamais l'écouteur à un réseau non fiable et arrêtez le tunnel après utilisation. D'autres utilisateurs et processus sur la machine d'écoute peuvent également accéder au port local non authentifié. L'utilisateur SSH doit avoir l'autorisation d'accéder au socket concerné ; le serveur SSH doit autoriser la redirection correspondante. N'affaiblissez pas les autorisations des sockets pour que cela fonctionne.
Exemples
Prérequis : installez la CLI Docker sur laquelle vous exécutez le test et assurez-vous que le démon Docker de destination est en cours d'exécution. Sur Mac, inspectez le contexte Docker actuel ; un chemin de socket Unix doit être absolu. Les contextes distants ne sont pas des sockets locaux.
docker context inspect --format '{{.Endpoints.docker.Host}}'Redirection locale : dans Secure Pipes, choisissez Local Forward, définissez le point de terminaison local sur 127.0.0.1:8888 et choisissez Remote Unix Socket avec /var/run/docker.sock. Connectez-vous à l'hôte Ubuntu distant, puis exécutez cette commande sur le Mac.
docker -H tcp://127.0.0.1:8888 psPour trouver le socket Mac pour le transfert à distance, inspectez le contexte Docker sur le Mac. Par exemple, OrbStack peut signaler unix:///Users/yourname/.orbstack/run/docker.sock ; utilisez votre chemin absolu réel.
docker context inspect --format '{{.Endpoints.docker.Host}}'Transfert à distance : dans Secure Pipes, choisissez Remote Forward, définissez le point de terminaison distant sur 127.0.0.1:8888 et choisissez Local Unix Socket avec le chemin du socket Mac. Après la connexion, exécutez cette commande sur l'hôte distant.
docker -H tcp://127.0.0.1:8888 psVous pouvez également définir DOCKER_HOST pour une seule commande. Cela ne modifie pas le shell actuel ni le contexte Docker enregistré.
DOCKER_HOST=tcp://127.0.0.1:8888 docker psRéférences officielles
Vérifié le 27 octobre 2026