對容器修改,而後保存鏡像到本地php
$ sudo docker commit -m "Added json gem" -a "Docker Newbee" 0b2616b0e5a8 ouruser/sinatra:v2html
4f177bd27a9ff0f6dc2a830403925b5360bfe0b93d476f7fc3231110e7f71b1cnode
其中, -m 來指定提交的說明信息,跟咱們使用的版本控制工具同樣; -a 能夠指定更新的用戶信息;之mysql
後是用來建立鏡像的容器的 ID;最後指定目標鏡像的倉庫名和 tag 信息。建立成功後會返回這個鏡像的 IDlinux
信息。web
docker目錄:/var/lib/docker/sql
將庫的鏡像從公有倉庫下載下來,而後啓動:docker
能夠經過 -v 參數來將鏡像文件存放在本地的數據庫
指定路徑。 例以下面的例子將上傳的鏡像放到 /opt/data/registry 目錄。json
$ sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
#docker run -d -p 5000:5000 --name my_registry -v /home/test/registry:/tmp/registry index.alauda.cn/library/registry
進入容器中操做:
docker exec -it centos_test1 /bin/bash
從庫中上傳鏡像至庫時,不管是庫,仍是遠端機器都須要修改docker啓動參數:
Ubuntu14.0
vim /etc/default/docker
增長如下一行
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=104.131.173.242:5000"
重啓Docker
sudo service docker restart
#修改docker文件(centos6.5版本 )
root > vim /etc/sysconfig/docker
other_args="--insecure-registry www.monicacca.com:5000"
DOCKER_CERT_PATH=/etc/docker
#重啓docker
root>sudo service docker restart
源文檔 <http://blog.sina.com.cn/s/blog_6b8660320102vokt.html>
源文檔 <http://blog.csdn.net/delphiwcdj/article/details/43099877>
進庫以前需將鏡像改爲庫識別的tag:
root@ubuntu-server14:/home/test# docker tag csphere/centos_snap:7.1 10.1.1.156:5000/csphere/centos_snap:7.1
root@ubuntu-server14:/home/test# docker p_w_picpaths
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
csphere/centos_snap 7.1 9cb1669dff14 19 hours ago 522.8 MB
10.1.1.156:5000/csphere/centos_snap 7.1 9cb1669dff14 19 hours ago 522.8 MB
csphere/ubuntu-new 12.04 3b10b84c7a3c 23 hours ago 201.4 MB
csphere/centos-new 7.1 1c4100b77d6f 27 hours ago 591.3 MB
csphere/website1 1.0 9e1efed7bd07 27 hours ago 785.2 MB
csphere/workpress 4.2 796d351d0b9f 46 hours ago 722.5 MB
csphere/mysql 5.5 9045193e0fe4 2 days ago 724.9 MB
index.alauda.cn/lawsonduan/test 5.5 9045193e0fe4 2 days ago 724.9 MB
csphere/php-fpm 5.4 cb02d60727ea 2 days ago 684.9 MB
csphere/centos 7.1 15e1362ccd01 2 days ago 591.3 MB
ubuntu 12.04 33eb06bbb379 6 days ago 138.4 MB
index.alauda.cn/library/registry latest 07d93e41c370 8 weeks ago 422.9 MB
registry latest 07d93e41c370 8 weeks ago 422.9 MB
centos centos7.1.1503 fab4b1df8eb1 5 months ago 212.1 MB
將 p_w_picpath傳進私有庫
docker push 10.1.1.156:5000/csphere/centos_snap
查看庫:
curl http://10.1.1.156:5000/v1/search
建立數據容器,提供給其餘容器共享同一個數據存放目錄,數據容器不須要運行便可使用:
# docker run -d -v /dbdata --name dbdata csphere/centos:7.1 echo "Data-only container"
#docker run -d --volumes-from dbdata --name centos_db1 csphere/centos:7.1
docker run -d --volumes-from dbdata --name centos_db2 csphere/centos:7.1
查看容器的日誌:
#docker logs -f centos_db1
容器互聯:
#docker run -d --name db1 csphere/mysql:5.5
#docker run -d -P --name web2 --link db1:db1 csphere/php-fpm:5.4 (前一個db1是數據庫容器名,後一個是別名)
#docker exec -it web2 /bin/bash
[root@c209d4c8b215 /]# more /etc/hosts
172.17.0.12 c209d4c8b215
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.11 db1 4b490b7dcde9
[root@c209d4c8b215 /]# ping db1
PING db1 (172.17.0.11) 56(84) bytes of data.
64 bytes from db1 (172.17.0.11): icmp_seq=1 ttl=64 time=2.28 ms
64 bytes from db1 (172.17.0.11): icmp_seq=2 ttl=64 time=0.122 ms
64 bytes from db1 (172.17.0.11): icmp_seq=3 ttl=64 time=0.124 ms
多個web容器能夠連接一個db容器
掛載宿主機已存在目錄後,在容器內對其進行操做,報「Permission denied」。
可經過兩種方式解決:
1> 關閉selinux。
臨時關閉:# setenforce 0
永久關閉:修改/etc/sysconfig/selinux文件,將SELINUX的值設置爲disabled。
2> 以特權方式啓動容器
指定--privileged參數
如:# docker run -it --privileged -v /test:/soft centos /bin/bash