docker安装使用
[root@NFS1-1 ~]#yum install docker-io
[root@NFS1-1 ~]#/etc/init.d/docker start
[root@NFS1-1 ~]#docker search centos
[root@NFS1-1 ~]#docker run centos /bin/echo hello
[root@NFS1-1 ~]#docker run --name mydocker -it centos /bin/bash
[root@NFS1-1 ~]#docker run -d --name mynginx nginx
[root@NFS1-1 ~]#docker start 2e9573e69b8d
[root@NFS1-1 ~]#docker inspect --format "{{.State.Pid}}" mynginx
[root@NFS1-1 ~]#nsenter --target 2668 --mount --uts --ipc --pid --net
[root@NFS1-1 ~]#docker run -d -P --name mynaginx nginx #-P随机指定端口
docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAME
S9a2f61b33f3f nginx "nginx -g 'daemon of 12 seconds ago Up 11 seconds 0.0.0.0:32769->80/tcp, 0.0.0.0:32768->443/tcp myna
ginx
[root@NFS1-1 ~]#docker run -it --name volume-test1 -h nginx -v /data centos
[root@nginx /]#
[root@NFS1-1 ~]# docker inspect -f {{.Volumes}} volume-test1
map[/data:/var/lib/docker/volumes/ecdbe13a4d9e3c64f860f12927627afa932b0d0ff50be1c42bfc5e9bc8c70f5b/_data]
[root@NFS1-1 ~]# cd /var/lib/docker/volumes/ecdbe13a4d9e3c64f860f12927627afa932b0d0ff50be1c42bfc5e9bc8c70f5b/
[root@NFS1-1 ecdbe13a4d9e3c64f860f12927627afa932b0d0ff50be1c42bfc5e9bc8c70f5b]# ls
_data
[root@NFS1-1 ecdbe13a4d9e3c64f860f12927627afa932b0d0ff50be1c42bfc5e9bc8c70f5b]# cd _data/
[root@NFS1-1 _data]# touch hehe
[root@nginx /]# cd /data/
[root@nginx data]# ls
hehe
制作nginx镜像
[root@NFS1-1 ~]# docker run -it --name nginx-man centos
[root@45f903b1d4f5 /]# yum install -y gcc gcc-c++ make openssl-devel wget
[root@45f903b1d4f5 /]#wget http://nginx.org/download/nginx-1.9.15.tar.gz
[root@45f903b1d4f5 /]#wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz
[root@45f903b1d4f5 ~]# vi /etc/rc.local
/usr/local/ngiinx/sbin/nginx
[root@45f903b1d4f5 ~]# vi /usr/local/nginx/conf/nginx.conf
daemon off;
[root@NFS1-1 ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
45f903b1d4f5 centos "/bin/bash" 34 minutes ago Up 31 minutes nginx-man
[root@NFS1-1 ~]# docker commit -m "my nginx" 45f903b1d4f5 ffhm/my-nginx:v1
8f61041343b1dbca04e4a9d3c8fdd147543c1fa059ab50ad1eeac125b8d6d707
[root@NFS1-1 ~]# docker pull registry
[root@NFS1-1 ~]# docker tag ID 10.0.0.7/test/es:v1
web管理工具
shipuard
工具篇
stress压力测试
docker run -it --rm -c 0 stress --cpu
docker run -it --rm -m 128M stress --vm 1 --vm-bytes 120m --vm-hang 0
方便脚本篇
#!/bin/bash
CNAME=$1
CPID=$(docker inspect --format "{{.State.Pid}}" $CNAME)
nsenter --target "$CPID" --mount --uts --pid --net --ipc
故障篇
错误一
提示:Segmentation Fault or Critical Error encountered. Dumping core and aborting.
Aborted
解答:安装错误安装docker了,应该安装docker-io
错误二
提示:Transaction Check Error:
file /usr/bin/docker from install of docker-io-1.7.1-2.el6.x86_64 conflicts with file from package docker-1.5-5.el6.x86_64
解答:这个是因为先装了docker,再装docker-io后的结果,解决方法是yum remove docker后再yum install docker-io即可。
问题三
提示:Get http:///var/run/docker.sock/v1.19/images/search?term=centos: dial unix /var/run/docker.sock: no such file or directory. Are you trying to connect to a ?
解答:docker没有启动,/etc/init.d/docker start
问题四
不能使用这来进入容器,会把容器死掉并且进不去。
docker attach 2e9573e69b8d
解决方法 使用 nsenter PID进入容器
docker inspect --format "{{.State.Pid}}" mynginx #获取PID
nsenter --target 2668 --mount --uts --ipc --pid --net #用PID进入
nsenter属于这个包,没有用yum install util-linux装上。
问题五
docker run -it --name volume-test1 -h nginx -v /data nginx
没有结果一直卡着,这个是nginx的容器问题
换个容器吧
换成centos就可以了
docker run -it --name volume-test1 -h nginx -v /data centos