一.Docker简介
程序员经常遇到一个问题,这个程序在我的电脑上已经跑通了,但是在他的电脑上怎么跑都跑不通。因为每台电脑的环境都不一样,这就对程序的运行造成了很大的困恼。又或者我们需要重新部署环境,但是之前环境上安装了很多东西,环境系统之后需要大量的时间部署软件。此时Docker就登场了。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中。也就是所你可以将你的环境。当然我也是一个Docker的初学者,个人理解Docker对于Java就像Ghost对于Windows。
- Docker主机(Host):安装了Docker程序的机器。
- Docker客户端(Client):连接Docker主机进行操作。
- Docker仓库(Registry):用来保存各种打包好的镜像。
- Docker镜像(Images):软件打包好的镜像,放在Docker仓库中。
- Docker容器(Container):镜像启动后的实例就是容器。
二.Linux虚拟机的安装
我们这次选择在Linux上部署Docker。VMWare+CentOS的组合,软件自行下载。
这里有一个小坑,就是在VMWare上安装好CentOS后是连不上网络的,这里我们需要修改配置文件。
vi /etc/sysconfig/network-scripts/ifcfg-enoXXX(XXX根据系统不同而不同),因为我们看默认是不启动网卡的(ONBOOT=no),所以需要将ONBOOT选项改为yes。然后service network restart,我们联网方式选择的是NAT。
配置文件修改
此时我们可以ping一下测试网络
网络已通
三.Docker的安装
- 查看CentOS的版本,要保证版本高于3.10。我们可以输入
uname -r
查看版本。 - 如果要升级内核,指令为
yum update
- 安装Docker,指令为
yum install docker
- 启动Docker,指令为
systemctl start docker
- 用
docker -v
查看docker版本 - 添加开机启动Docker
systemctl enable docker
- 停止Docker,指令
systemctl Stop docker
- 进入某一个容器
docker exec -it <container1> /bin/bash
四.Docker常用操作
1.镜像操作
操作 | 指令 | 作用 |
---|---|---|
检索 | docker search XXX | 到docker Hub中检索镜像 |
拉取 | docker pull XXX:TAG | 从docker Hub中拉去XXX的TAG版本的镜像 |
查询镜像 | docker images | 查看本地镜像 |
删除 | dock rmi 镜像ID | 删除指定的本地镜像 |
2.容器操作
操作 | 指令 | 说明 |
---|---|---|
启动运行 | dock run --name containner-name -d image-name | -name 容器名 -d 后台运行 image-name镜像模版 |
查看列表 | docker ps | 运行中容器 |
查看列表 | docker ps -a | 所有容器 |
停止 | docker stop container-name/container-id | 停止当前容器 |
启动 | docker start container-name/container-id | 启动当 前容器 |
删除 | docker rm container-id | 删除指定容器 |
端口映射 | -p 6376:6376 eg:docker run -d -p 主机端口:容器端口 --name myredis docker.io/redis |
-p:主机端口映射 |
日志 | docker logs | 容器日志 |
更多的命令可以参考docker官方文档。
启动tomcat:
运行docker run --name mytomcat -d -p 8888:8080 tomcat
映射地址之后就可以在主机访问tomcat
启动mysql:
运行docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
更多环境的配置可以参看DockerHub。(果然带HUB的都是好网站啊!)
网友评论