Docker
处于root用户权限时不用加sudo
一.镜像
获取镜像
sudo docker pull 镜像名称:[镜像版本号]
如sudo docker pull ubuntu:14.04
表示下载ubuntu14.04版本镜像,如果不跟版本号,默认下载最新版本
使用镜像创建容器
sudo docker run -it 镜像名称 /bin/bash
查看镜像信息
sudo docker images:查看简略的信息
sudo docker inspect 镜像id号:查看详细的信息
为本地镜像添加新的标签(tag)
sudo docker tag dl.dockerpool.com:5000/ubuntu:latest 新的标签名称
搜寻镜像
sudo docker search 镜像名称
删除镜像
docker rmi 镜像id
创建镜像
基于已有镜像的容器的创建
docker commit options container repository【:tag】
存入镜像
docker load --input ubuntu_14.04.tar(镜像的压缩包)
docker load <ubuntu_14.04.tar
存出镜像
docker save -o ubuntu_14.04.tar ubuntu:14.04
二.容器
定义:独立运行对的一个或一组应用,以及它们的必需运行环境
新建容器,启动容器
sudo docker create 参数 镜像名称:标签
sudo docker start 容器id
sudo docker run 镜像名称 /bin/bash
参数
-it 启动交互式bash
-dp 启动端口映射
–restart=always:docker容器设置自动启动
停止容器
sudo docker stop 容器名称或id号
进入容器
sudo docker exec -it 容器编号 /bin/bash
删除容器
sudo docker rm 容器编号
查看容器
sudo docker ps -a
导出导入容器
sudo docker export 容器名称 >文件名称.tar
sudo docker export ce554267d77a4 >test_for_run.tar
将 ce554267d77a4 导入到文件test—for—run.tar
cat 要导入的的容器名称.tar
上传本地文件到容器
docker cp 本地文件路径 容器id docker容器文件路径
docker cp /home/1.txt ce554267d77a4 /www/html
复制根目录home文件夹中的1.txt 复制到ce554267d77a4这个容器中的www中的html文件中
三.给容器加载数据卷
1.加载指定目录
docker run -it -v /虚拟机下的绝对路径:/容器文件夹的绝对路径 容器镜像 /bin/bash
2.查看指定文件是否挂载上
docker inspect 容器编号
四.容器映射端口到本地
1.docker run -d -p 镜像名称
docker会随机映射一个49000~49900的端口到容器内部开放的网络端口
2.查看应用的信息
docker logs -f
3.映射到指定地址的指定端口
docker run -d -p 127.0.0.1:5000:5000 镜像名称
4.映射到指定地址的任意端口
docker run -d -p127.0.0.1::5000
5.查看端口映射
docker port 容器名称 5000
6.查看容器的内部网络和IP地址
docker inspect + 容器id
7.容器互联
docker run -d --name db 镜像名称
–name db :表示该容器的名称叫 db
docker run -d -p --name web --link db:db 镜像名称
–link name:alias name是要链接的容器的名称:alias是这个链接的别名