為了方便解說,我們拿 GCP 的環境來做教學,做一個下面規格的 ubuntu 環境來玩。
環境起來後,我們就 SSH 進去開始安裝我們的 docker。
# 官方建議的移除舊有套件語法
sudo apt-get remove docker docker-engine
# 開始安裝
sudo apt-get update
sudo apt-get install docker.io
下面語法測試是否有正常啟動,如果出現綠色字就是有了。
service docker status
然後把你的 USER 加入 docker 的權限中,然後重登使用者,否則使用時會跳錯。
sudo usermod -aG docker $USER
接下來可以下以下語法看目前擁有的 image,因為剛安裝完應該是空的。
docker images
我們來裝一個 ubuntu 的 image,使用以下語法可以查有哪些 ubuntu image,我們挑最多人使用的第一個下載。
# 搜尋相關 image docker search ubuntu # 指定名稱並下載 docker pull ubuntu
好了以後再下一次 docker images 就可以看到有 ubuntu 的映像檔了。
接下來用以下語法來開啟建立 container 環境,語法可以分為以下幾個 :
- -i :container 保持打開
- -t:分配一個虛擬終端(pseudo-tty)並綁定到容器的標準輸入上
- -d:背景執行
- -e:設定環境變數(AAA=BBB)
- -p:Port 對應(host port:container port),如 3000:8080 就是裡面8080外面3000
- -v:資料對應(host folder:container folder)
- -name:設定容器名稱
docker run -i -t -d -p 3000:8080 --name=test_docker ubuntu
有名稱後就可以用下面語法進去 docker 裡面了。
docker exec -it test_docker bash
進去後就可以照自己喜歡安裝 python 或 jupyter notebook,因為在起 docker 時有指定底層 port 接口,就可以在外面用 3000 連到裡面的 8080 port 了。
若要終止則可以使用 docker stop 停止或是 docker rm 刪除,也可以將 container 打包成 image 帶出。
docker export test_docker > test_docker.tar
當拿到新的 docker 環境要匯入時,則使用以下語法:
docker load < test_docker.tar
如此一來就可以輕鬆地使用 docker 環境囉!