Docker:

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口 --来自百度百科········

准备条件


1:下载docker

yum -y install docker

2:启动docker

service docker start

3:查看docker 状态

service docker status

出现如下界面即启动成功

docker swarm部署多机多节点rocketmq集群 部署多个docker_tomcat


4:拉取镜像

docker 必备的三个知识点 镜像,仓库,容器
根据不同项目下载不同的镜像,通过镜像生成容器,也就是说一个镜像可以生成多个容器,装载不同的项目
我们这里使用到 三个镜像
1:redis
2:tomcat
3:mysql

拉取redis

docker pull redis --下载redis 镜像
docker run --name redis -d -p 6379 redis --启动 redis

拉取redis

docker pull tomcat --下载tomcat 镜像
docker run --name tomcat8080 -d -p 8080:8080 tomcat --启动镜像,-d 后台启动,-p 指定映射端口

拉取mysql

docker pull mysql 
docker run --name mysql57 -d -p 3306:3306 mysql --启动mysql 镜像,mysql 配置已省略----自行百度

5:查看镜像

docker images

docker swarm部署多机多节点rocketmq集群 部署多个docker_tomcat_02


6:查看启动刚才启动的容器

docker ps -a

docker swarm部署多机多节点rocketmq集群 部署多个docker_tomcat_03


7:发布项目

该项目是网上下载的项目,已经在本地配置号redis ,mysql
1:将本地项目打war包拷贝的宿主主机
2:将war包发布到docker下的tomcat中
上传war

rz

docker swarm部署多机多节点rocketmq集群 部署多个docker_新手教程_04


上传完毕之后拷贝到docker的tomcat容器中

docker cp /root/war/a.war tomcat:/usr/local/tomcat/webapps
--/root/war/a.war 宿主主机war路径 tomcat: 容器名称 docker ps -a 中查看容器名称

8:重新启动docker 的tomcat

docker stop tomcat --停止容器
docker start tomcat --启动容器
或者直接
docker restart tomcat --重新启动

访问网站:ip+端口

docker swarm部署多机多节点rocketmq集群 部署多个docker_docker_05

这过程中可能会遇到的坑
配置防火墙之后倒置容器启动失败
解决办法 重新启动docker

网站不能正常访问
检查端口是否开放

docker 下 vim vi: command not found
两个办法
1:apt-get install vim /apt-get update apt-get install vim
2:将文件放到宿主主机,通过 docker cp /root/war/a.war tomcat:/usr/local/tomcat/webapps 拷贝
相反即可将docker容器下的文件拷贝到宿主主机