简介
Docker 是一个构建、管理和运行分布式应用的开源平台。它提供给程序员、开发团队和运维工程师共同的工具箱,来利用分布式的、网络化的现代应用的特性。
安装
Ubuntu 14.04
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list
sudo apt-get update
sudo apt-get install docker-engine
基础使用
获取镜像
docker pull IMAGE_NAME[:TAG]
举例
// 获取最新版本
docker pull ubuntu
// 获取指定版本
docker pull mongo:3.0.7
启动
docker run [OPTIONS] IMAGE_NAME[:TAG] [COMMAND] [ARG...]
常用 OPTIONS
- --name 容器名 —— 指定容器名
- -v 宿主机路径:容器内路径 —— 将宿主机路径挂载到容器内路径
- -p 宿主机端口:容器内端口 —— 将宿主机端口映射到容器内端口
- --link 被连接容器的容器名:容器内被连接容器的容器名 —— 连接一个已存在的容器
- -i —— 开启终端输入
- -t —— 开启虚拟终端
- -d —— 守护态运行
- --rm —— 容器退出后自动删除
- --privileged —— 容器内用户具有真正的 root 权限
举例
docker run --name mongodb -v /home/fei/data/db:/data/db -p 27017:27017 -d mongo:3.0.7
docker run --name nodejs-app -v /home/fei/nodejs_app:/code -p 3000:3000 -d --link mongodb:mongodb nodejs:5.0.0 /bin/bash -c "cd /code && npm install && node ./bin/www"
重启、停止、删除
docker restart CONTAINER_NAME / CONTAINER_ID
docker stop CONTAINER_NAME / CONTAINER_ID
docker rm CONTAINER_NAME / CONTAINER_ID
常用操作
// 显示 docker 信息
docker info
// 显示所有镜像
docker images
// 显示所有容器
docker ps -a
// 检查容器详细信息
docker inspect CONTAINER_NAME / CONTAINER_ID
// 显示容器内终端输出
docker logs CONTAINER_NAME / CONTAINER_ID
// 进入容器内部
docker attach CONTAINER_NAME / CONTAINER_ID