Originally published to https://johnneyl.ee/writes/
Problem: /usr/local/bin
missing from ssh $PATH
bash: docker: command not found
Exec ssh [localhost](http://localhost) docker
Normally, your paths include your /usr/local/bin
, however, in macos you'll find that if you SSH into localhost (or indeed any macos host), it is missing. Such is the case when setting up a docker profile with an ssh-based remote host, for example. 🙄
To fix this, we need to safely⚠️ enable an option that's disabled in your sshd_config
called PermitUserEnvironment
Solution: /etc/ssh/sshd_config
& PermitUserEnvironment PATH,LANG
Edit sshd_config
& ~/.ssh/environment
sed -i '' 's/#PermitUserEnvironment no/PermitUserEnvironment PATH,LANG/g' /etc/ssh/sshd_config
Bash:
echo "PATH=/usr/local/bin:$PATH" >> ~/.ssh/environment
Fish:
echo "setenv PATH /usr/local/bin:$PATH" >> ~/.ssh/environment
Conclusion:
🥳 ssh [localhost](http://localhost) docker
works!🥳
Now go and cluster all your macbooks together with docker! 🥳
Top comments (0)