docker 运维使用技巧(二)
一:基础命令知识
1.数据卷
https://docs.docker.com/engine/tutorials/dockervolumes/
2.获取IP地址
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' db
3.卷轴
docker run -d -P --name web -v /webapp training/webapp python app.py
4.加载母鸡上的目录到容器中
docker run -d -P --name web -v /src/webapp:/webapp training/webapp python app.py
5.设置权限
docker run -d -P --name web -v /src/webapp:/webapp:ro training/webapp python app.py
6.单文件
docker run --rm -it -v ~/.bash_history:/root/.bash_history ubuntu /bin/bash
7.改标签
docker tag 7d9495d03763 maryatdocker/docker-whale:latest
8.其他
docker login
docker push maryatdocker/docker-whale
docker rmi -f docker-whale
docker run yourusername/docker-whale
二:docker 应用技巧
1.启动docker
service docker start
chkconfig docker on
2.获取Centos镜像
>docker pull centos:latest
列出容器:docker ps -a
查看最近生成的容器:docker ps -l
查看正在运行的容器:docker ps
3.对容器安装net工具
docker run centos yum install net-tools -y
保存容器:
docker commit e33ed centos:ifconfig
检查容器镜像:
docker images
在新镜像中执行ifconfig命令
4.停止正在运行的容器:docker stop CONTAINERID
默认等待10秒钟再杀死指定容器。可以使用-t参数来设置等待时间
查看容器或镜像的详细信息:docker inspect CONTAINERID|IMAGE
参数可以是容器的ID或者是镜像名(NAME:TAG)
5.删除容器:docker rm CONTAINERID
查看所有容器ID:docker ps -a -q
删除所有的容器:docker rm $(docker ps -a -q)
删除镜像:docker rmi IMAGE
6.docker info
查看docker的信息,包括Containers和Images数目、kernel版本等
创建一个新容器并登入:docker run -i -t IMAGE /bin/bash
三,应用Docker
1,获取Centos镜像
>docker pull centos:latest
2,查看镜像运行情况
>docker images centos
3,在容器下运行 shell bash
>docker run -i -t centos /bin/bash
4,停止容器
>docker stop
5,查看容器日志
>docker logs -f
6,删除所有容器
>docker rm $(docker ps -a -q)
7,删除镜像
>docker rmi
8,提交容器更改到镜像仓库中
>docker run -i -t centos /bin/bash
>useradd myuser
>exit
>docker ps -a |more
>docker commit myuser/centos
9,创建并运行容器中的 hello.sh
>docker run -i -t myuser/centos /bin/bash
>touch /home/myuser/hello.sh
>echo "echo \"Hello,World!\"" > /home/myuser/hello.sh
>chmod +x /home/myuser/hello.sh
>exit
>docker commit myuser/centos
>docker run -i -t myuser/centos /bin/sh /home/myuser/hello.sh
10,docker 中添加用户,并修改密码
添加测试用户admin,密码admin
# useradd admin
# echo 'admin:admin' | chpasswd