手動編譯安裝docker環境,以及偶爾出現的bug


總結安裝過程如下:

前提:安裝git,go,make, docker(docker中編譯docker)

git clone https://git@github.com/docker/docker
cd docker
git checkout -b v1.5.0   (這里選擇你要編譯的版本,看github上的tag)
sudo make build && sudo make binary

編譯生成的文件在
./bundles/1.5.0/binary/docker-1.5.0

cp ./bundles/1.5.0/binary/docker-1.5.0 /usr/bin/docker

安裝apparmor和cgroup-lite
sudo apt-get install -y apparmor
sudo apt-get install -y cgroup-lite

最后docker -d & 啟動服務

 

壓力測試,目前還沒有發現測試多次不發生錯誤的版本:

for i in {0..100}; do docker run --rm busybox echo test; done

 

目前測試到的比較穩定的組合版本是,不過偶爾也是有bug(destroy container device or resource busy版本)

ubuntu12.04 kernel3.13 + aufs backend filesystem + docker1.5.0

 

請問各位讀者:

各位在生產環境下,怎么安裝docker可以規避如下bug:

bug: start container, no such container
bug: cannot destroy container,  driver aufs failed to remove root filesystem, device or resource busy

(ubuntu12.04系統或者退一步其他系統的解決方案也行)

 

參考

https://docs.docker.com/contributing/devenvironment/

https://github.com/docker/docker/issues/8791

http://yayua.github.io/docker/docker-source-code-part1-dev-setup/

https://github.com/docker/docker/issues/4036   列出了一個表,說明不同版本中backend filesystem的支持


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM