iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 1
0
自我挑戰組

Go to 放棄系列 第 1

為何要使用go,但要參見樹莓派呢?

因為我不想污染我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
即可成功
https://ithelp.ithome.com.tw/upload/images/20181016/20112477tLXQti4lB0.png

接下來就要安裝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

https://ithelp.ithome.com.tw/upload/images/20181016/20112477SzFeNLEMYU.png

這時再次下

docker run hypriot/armhf-hello-world

即可
https://ithelp.ithome.com.tw/upload/images/20181016/20112477uzMdxL8TGm.png

ㄜ ...時間不晚了,我人生第一篇鐵人賽之文先到這,希望此次參賽,不要中斷,所以以Go to 放棄,特別提醒自己,真的要放棄嗎XD

還有還有,如果哪位大大看到文章有誤,再麻煩指點小弟,謝謝
因為小弟是一邊實作,一邊查資料
第一次去接觸樹莓派的建置docker


下一篇
Ubuntu進駐樹莓派.並跳起samba
系列文
Go to 放棄30

尚未有邦友留言

立即登入留言