參考官網便可。我在Ubuntu-14.04上經過User Guide沒有任何問題。 web
AUFS (AnotherUnionFS in version 1, but advanced multi layered unification filesystem since version 2) implements a union mount for Linux file systems. Developed by Junjiro Okajima in 2006. aufs is a complete rewrite of the earlier Unionfs. It aimed to improve reliability and performance, but also introduced some new concepts, like writable branch balancing, and other improvements - some of which are now implemented in the Unionfs 2.x branch.
執行:docker info能夠看到系統級別的信息。以下所示,能夠看到docker使用的存儲驅動叫aufs。簡而言之,AUFS就是一個可堆疊聯合文件系統,經過aufs可靈活組裝一個目標容器,如在一個只讀的操做系統上疊加一個可讀可寫的應用程序容器,當應用程序執行過程當中發生數據變化,只在可寫的容器層發生,這樣可實現靈活的容器組裝(如替換操做系統層而不影響應用程序層),同時無需像image同樣須要保存成一個大文件,節省存儲空間。 redis
Containers: 2 Images: 20 Storage Driver: aufs Root Dir: /var/lib/docker/aufs Dirs: 24 Execution Driver: native-0.2 Kernel Version: 3.13.0-24-generic WARNING: No swap limit support
ubuntu下每次執行docker都要輸入sudo,比較煩人,可經過以下配置簡化 docker
# 添加當前用戶到docker用戶組裏,注意這裏的littcai爲ubuntu server登陸用戶名 sudo gpasswd -a littcai docker # 重啓Docker後臺監護進程 sudo service docker restart # 重啓以後,嘗試一下,是否生效 docker version #若還未生效,則系統重啓,則生效 sudo reboot
執行以下命令:運行一個名爲common-redis的docker容器,-d表示以daemon方式運行,-p表示將容器內的6379端口映射到宿主主機的6379端口,這樣一個最簡單的redis服務就建立好了。 shell
sudo docker run --name common-redis -d -p 6379:6379 redis
運行redis-cli命令並link到以前運行的common-redis服務上,-it表示開一個tty終端,提供交互模式,--rm表示自動刪除已運行存在的相同image的容器 ubuntu
sudo docker run -it --link common-redis:redis --rm redis sh -c 'exec redis-cli -h "$REDIS_PORT_6379_TCP_ADDR" -p "$REDIS_PORT_6379_TCP_PORT"'
有時候咱們須要從新進入一個正在運行的container,這裏咱們可使用attach命令,其中-i表示以交互方式訪問。當須要退出時,需使用ctrl-p + ctrl-q(注意是連續兩個指令)而不是exit(exit會致使容器中止)。 tomcat
docker attach -i f2b0ae55d07a
首先用docker ps -a命令查詢全部已建立的容器,以下圖所示,得知其CONTAINER ID=f2b0ae55d07a
執行以下命令保存鏡像,其中-m表示本次提交的註釋,-a爲author,f2b0ae55d07a爲容器ID,ycai/ubuntu-jdk爲鏡像名稱(此處經過前綴方式增長了用戶名做爲分類,方便查詢),v1爲tag名。 app
docker commit -m="Basic JDK ENV" -a="ycai" f2b0ae55d07a ycai/ubuntu-jdk:v1
提交成功後,可經過docker images命令查看鏡像倉庫中是否有剛纔保存的鏡像,以下圖所示
webapp
拷貝容器內文件到Host ide
sudo docker cp container:/path hostpath
sudo docker insert image url path
經過-v參數能夠將Host的指定目錄mount到目標容器的指定目錄,這樣就能夠直接在Host中修改文件而不用每次都複製到容器中了。 ui
sudo docker run --name tomcat -v /home/user/webapps:/opt/tomcat/webapps ubuntu-tomcat
問題:經過-v掛載了Host的一個目錄到容器中,然而退出後經過start命令再啓動該容器,則Host該目錄下的文件變化無法體現到容器中,容器中在該目錄下的文件操做沒法體現到Host中,及mount失效了。 現象:將容器內掛載目錄下的文件刪掉,退出容器,再從新啓動進入容器,發現目錄又被從新mount上了,並且又支持雙向同步了,詭異 分析:該目錄同時也是Host經過mount方式掛載的一個遠端存儲,因爲Host上mount失效致使三者之間不一樣步