一、什么是Docker
Docker是一个开源的应用容器引擎,基于LXC(Linux Container)内核虚拟化技术实现,提供一系列更强的功能,比如镜像、 Dockerfile等;Docker理念是将应用及依赖包打包到一个可移植的容器中,可发布到任意Linux发行版Docker引擎上。使用沙箱机制运行程序, 程序之间相互隔离;
二、Docker有什么优点
持续集成 在项目快速迭代情况下,轻量级容器对项目快速构建、环境打包、发布等流程就能提高工作效率。
版本控制 每个镜像就是一个版本,在一个项目多个版本时可以很方便管理。
可移植性 容器可以移动到任意一台Docker主机上,而不需要过多关注底层系统。
标准化 应用程序环境及依赖、操作系统等问题,增加了生产环境故障率,容器保证了所有配置、依赖始终不变。
隔离性与安全 容器之间的进程是相互隔离的,一个容器出现问题不会影响其他容器。
三、Docker安装与配置
Linux版本CentOS7
1.安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
2.设置镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.安装Docker-CE
yum install docker-ce
4.启动Docker
#启动
systemctl start docker
#重新启动
systemctl restart docker
#开机自启
systemctl enable docker
5.测试
docker run hello-world
docker version
6.拉取镜像
docker pull <镜像名:tag>
四、Docker常用命令
1.拉取镜像
docker pull
2.删除容器
docker rm <容器名 or ID>
3.查看容器日志
docker logs -f <容器名 or ID>
#查看最近100行日志
docker logs -f --tail=100 containername
4.查看正在运行的容器
docker ps
docker ps -a # 为查看所有的容器,包括已经停止的。
5.停止、启动、杀死指定容器
docker start <容器名 or ID> # 启动容器
docker stop <容器名 or ID> # 启动容器
docker kill <容器名 or ID> # 杀死容器
6.查看所有镜像
docker images
7.后台运行
docker run -d <Other Parameters>
#例如
docker run -d -p 127.0.0.1:33301:22 centos6-ssh
8.暴露端口
一共有三种形式进行端口映射
docker -p ip:hostPort:containerPort # 映射指定地址的主机端口到容器端口
#例如:docker -p 127.0.0.1:3306:3306 映射本机3306端口到容器的3306端口
docker -p ip::containerPort # 映射指定地址的任意可用端口到容器端口
#例如:docker -p 127.0.0.1::3306 映射本机的随机可用端口到容器3306端口
docer -p hostPort:containerPort # 映射本机的指定端口到容器的指定端口
#例如:docker -p 3306:3306 # 映射本机的3306端口到容器的3306端口