Docker 是一個開源的應用容器引擎,可讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,而後發佈到任何流行的 Linux 機器上,也能夠實現虛擬化。容器是徹底使用沙箱機制,相互之間不會有任何接口,容器性能開銷極低。這對樹莓派很是有用,本教程將介紹 Docker 這個工具以及如何在 Raspbian 上安裝 Docker。
html
Docker 的應用場景
Web 應用的自動化打包和發佈。
自動化測試和持續集成、發佈。
在服務型環境中部署和調整數據庫或其餘的後臺應用。
從頭編譯或者擴展示有的 OpenShift 或 Cloud Foundry 平臺來搭建本身的 PaaS 環境。git
Docker 的優勢
Docker 讓開發者能夠打包他們的應用以及依賴包到一個可移植的容器中,而後發佈到任何流行的 Linux 機器上,即可以實現虛擬化。方便快捷已是 Docker 的最大優點,過去須要用數天乃至數週的任務,在Docker容器的處理下,只須要數秒就能完成。Docker 能夠簡化部署多種應用實例工做。好比 Web 應用、後臺應用、數據庫應用、大數據應用好比 Hadoop 集羣、消息隊列等等均可以打包成一個鏡像部署。github
這裏介紹兩種安裝 Docker 的方法,最簡單的是直接從 get.docker.com 下載安裝腳本並開始安裝。僅需執行下面一行命令便可。經測試,樹莓派3B、3A+、3B+ 都可支持 Docker,樹莓派 Zero 雖然能夠安裝成功,但沒法啓動 Docker 服務。docker
安裝方法一(腳本安裝)
腳本安裝是最推薦的方式,只須要輸入下面的命令,等待自動安裝好便可。數據庫
1
|
sudo
curl -fsSL https:
//get
.docker.com | sh
|
若是採用這一步安裝成功,可直接跳到下文的圖形界面安裝那裏繼續閱讀。瀏覽器
安裝方法二(apt 安裝)
因爲 Raspbian 基於 Debian,咱們還可使用 apt 來安裝 Docker,首先須要更新一下軟件包的索引。bash
1
|
sudo
apt-get update
|
安裝 HTTPS 所依賴的包
1
2
3
|
sudo
apt-get
install
apt-transport-https \
ca-certificates \
software-properties-common
|
添加 Docker 的 GPG key
1
|
curl -fsSL https:
//yum
.dockerproject.org
/gpg
|
sudo
apt-key add -
|
驗證 key id:curl
1
|
apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D
|
設置穩定的 repository:工具
1
2
3
4
|
sudo
add-apt-repository \
"deb https:
//apt
.dockerproject.org
/repo/
\
raspbian-$(lsb_release -cs) \
main"
|
注意:若是 add-apt-repository 命令遇到問題,能夠嘗試將下面這行添加到樹莓派軟件源 sources.list,操做以下:oop
1
|
sudo
nano
/etc/apt/sources
.list
|
添加一行:
deb https://apt.dockerproject.org/repo/ raspbian-RELEASE main
根據本身系統版本調整上面的 RELEASE。經過下面的命令能夠查看發行版。
1
|
lsb_release -cs
|
安裝 Docker
1
2
|
sudo
apt-get update
sudo
apt-get -y
install
docker-engine
|
測試 Docker
運行 hello-world 鏡像來作一個測試。
1
|
sudo
docker run hello-world
|
若是 Docker 安裝成功,你會看到一條消息:「Hello from Docker!」。
經常使用配置和工具命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#查看 Docker 版本
docker -
v
sudo
docker pull 倉庫/鏡像:版本(留空的話默認爲 latest)
sudo
docker run 加參數,用來建立容器
#查看運行容器
sudo
docker
ps
#查看全部下載的鏡像
sudo
docker images
#進入容器終端
sudo
docker
exec
-i -t ha
/bin/bash
#實時查看10行的 ha 日誌
sudo
docker logs -f -t --
tail
10 ha
#重啓 systemctl 守護進程
sudo
systemctl daemon-reload
#設置 Docker 開機啓動
sudo
systemctl
enable
docker
#開啓 Docker 服務
sudo
systemctl start docker
#下載 Docker 圖形化界面 portainer
sudo
docker pull portainer
/portainer
#建立 portainer 容器
sudo
docker volume create portainer_data
#運行 portainer
sudo
docker run -d -p 9000:9000 --name portainer --restart always -
v
/var/run/docker
.sock:
/var/run/docker
.sock -
v
portainer_data:
/data
portainer
/portainer
|
在圖形化界面中操做更加便利。運行以後在瀏覽器中輸入樹莓派IP:9000 進入界面。
首次訪問須要設定登陸密碼。
對於樹莓派上的應用,選擇 Local 就好。
在控制檯能夠看到 Docker 的各類資源信息。
相關連接
Docker 官網:http://www.docker.com
Github Docker 源碼:https://github.com/docker/docker
Docker 商店:https://store.docker.com
Docker 文檔:https://docs.docker.com