因為我不想污染我mac環境,且樹莓派放置已久,剛好拿來當這次go的環境
開發情境:mac ssh到 樹莓派
首先要啟動樹莓派的ssh的設定
1.打開terminal
sudo raspi-config
2.選擇Interfacing Options
3.選擇SSH
4.選擇yes
5.按下OK
6.選擇close
就完成ssh enable動作
再來就ssh囉~
ssh pi@IP
即可成功
接下來就要安裝Docker
會安裝Docker純粹動機是,不改動樹莓派原先安裝的debian
但想要讓go跑在ubuntu,因為目前公司的開發環境為ubuntu
所以就用docker~
安裝docker
curl -sSL https://get.docker.com | sh
若安裝好docker,再輸入
docker --version
檢查是否安裝成功
再來把我們pi的預設帳號加到docker群組,因為上網查
讓 pi 帳號可以直接操作 docker,別老用 sudo 或 root 來跑,避免發生 Docker daemon attack surface 問題。
sudo usermod -aG docker pi
重新啟動服務,並設定成開機後自動執行。
sudo systemctl restart docker
sudo systemctl enable docker
這時利用Docker for ARM 的 Hello World 來測試一下是否正常
docker run hypriot/armhf-hello-world
但卻出現錯誤
docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.38/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
後來查到原因
我沒有成功把pi加到docker群組裡
因為sudo usermod -aG docker pi,此時的group是root不是docker
所以需要
sudo adduser $USER root
正確順序應為
sudo addgroup --system docker
sudo adduser $USER docker
newgrp docker
這時的group才為docker
ls -l /var/run/docker.sock
這時再次下
docker run hypriot/armhf-hello-world
即可
ㄜ ...時間不晚了,我人生第一篇鐵人賽之文先到這,希望此次參賽,不要中斷,所以以Go to 放棄,特別提醒自己,真的要放棄嗎XD
還有還有,如果哪位大大看到文章有誤,再麻煩指點小弟,謝謝
因為小弟是一邊實作,一邊查資料
第一次去接觸樹莓派的建置docker