##docker 啓動快的緣由: 由於Container技術採起共享Host OS的做法,而不需在每個Container內執行Guest OS,所以創建Container不須要等待操做系統開機時間,不用1分鐘或幾秒鐘就能夠啓用,遠比須要數分鐘甚至數十分鐘才能開啓的傳統虛擬機來的快。html
centos 中文安裝指南:http://docker.widuu.com/installation/centos.htmlpython
> yum update -y > yum -y install docker
此命令下去 基本都能裝好mysql
sudo docker run ubuntu:14.04 /bin/echo 'Hello world' Hello world
docker imagesgit
docker inspect imageId (獲取鏡像詳細信息)github
容器是鏡像的一個實例web
docker stop imagesIdsql
若是前面運行的容器,只有一個終端,則退出時,容器stopdocker
-v 能夠屢次使用,來建立多個數據卷,也支持 掛載文件shell
容器之間掛數據卷ubuntu
先建立一個容器數據卷 sudo docker run -it -v /db --name dbdata ubuntu 來掛它 sudo docker run -it --volumes-form dbdata --name db1 ubuntu 還能夠接着掛 sudo docker run -it --volumes-form db1 --name db2 ubuntu
--volumes-from 也支持多個掛載,和-v 相似。 可是刪除麻煩,須要刪除所有掛載它的容器,同時 docker rm -v 來刪除關聯
在容器啓動的時候用的
有點相似 maven的Pom 文件 FROM centos/scala10.4
MAINTAINER qiao 306431869@qq.com COPY spark-1.5.2-bin-hadoop2.6/ /spark-1.5.2-bin-hadoop2.6/ ENV SPARK_HOME /spark-1.5.2-bin-hadoop2.6/ ENV PATH $PATH:$SPARK_HOME/bin
FROM FROM <IMAGE> or FORM <IMAGE>:<TAG>
MAINTAINER MAINTAINER <Name>,做者信息
RUN 能夠多條
<
COMMAND>
至關於 在終端中運行命令 ,至關於 /bin/sh -cCMD 只支持一條,以最後一條爲準,且會被容器啓動是指定的命令覆蓋
<
COMMAND>
EXPOSE EXPOSE 22 80 443
ENV ENV KEY VALUE 環境變量,能夠被RUN 使用,在容器啓動時,也是可使用的,可是有一點須要注意:使用ssh 鏈接時 ,這些參數就沒有用了
ADD ADD <Src> <dest>
COPY COPY <Src> <dest> ADD 和COPY 功能有所重疊,均可以從本地目錄拷貝文件到鏡像中,注意:只能是Dockerfile 所在目錄的一個相對目錄,且不支持../來回 得到上級目錄的資源。即只能是Dockerfile 所在目錄及其下目錄。 COPY 就只有這一個 功能,而ADD 的src 能夠是URL。tar 文件(自動解壓)
ENTRYPOINT 這個命令 能夠外接參數 ENTRYPOINT <
COMMAND>
ENTRYPOINT ["executable","param1","param2"....]
VOLUME VOLUME ["/data"]
先建立一個容器 docker run -d --name db db/mysql 鏈接它 docker run -d -P --name web --link db:db web/web python app.py 這兩個就互聯 能夠經過 docker ps 查看 其中 db:db ,前一個是容器名,後一個是 這個鏈接的 別名
下載安裝 >sudo wget -O /usr/local/bin/weave https://raw.githubusercontent.com/zettio/weave/master/weave >sudo chmod a+x /usr/local/bin/weave 啓動 >weave launch 搭建 多機互聯 在須要互聯的機器上 執行上面的命令 而後:例如 以 92,93,94 爲例 讓其他幾臺機鏈接94 weave connect 10.10.1.94 啓動容器 master 94 >weave run 192.168.0.101/24 -p 8088:8080 -p 2022:22 -itd --name weave centos/ /bin/bash slave 93 >weave run 192.168.0.102/24 -itd centos/sparkslave2 /bin/bash /run.sh 192.168.0.101:7077