docker实战:部署ssm项目-易操作系列

1.mysql5.7

1.1.配置mysql5.7容器

#拉取mysql
[root@localhost ~]# docker pull mysql:5.7

#创建容器
#-d后台运行mysql
#-p端口映射3310:3306(Linux主机:mysql),注意项目中数据库mysql的ip和端口分别改为Linux主机ip和3310
#-v挂载目录(Linux主机:mysql)
#-e运行mysql要配置密码,账号为root
#--name 容器名 镜像名:版本(不加版本又会拉取最新的)
[root@localhost ~]# docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7

1.2.导入sql脚本

1.2.1.使用navicat工具连接mysql容器:

1.2.2.运行sql脚本:

2.tomcat

#拉取tomcat
[root@localhost ~]# docker pull mysql:5.7

#创建容器
#-p端口映射3355:8080(Linux主机:tomcat),注意:最后访问的时候就是用3355端口
[root@localhost ~]# docker run -d -p 3355:8080 --name tomcat_shop tomcat
#以交互的方式进入容器
[root@localhost ~]docker exec -it tomcat_ssm /bin/bash

#webapps默认为空,复制/usr/local/tomcat/webapps.dist/*到/usr/local/tomcat/webapps就可以访问tomcat默认主页
#注意webapps下的目录出了主页ROOT要被项目重命名为ROOT替换为,其他一律不能动
root@7a8ff5f86b48:/usr/local/tomcat# cp -r webapps.dist/* webapps

3.修改项目相关中间件的ip和port配置

我这里只用了mysql

4.打包项目(记得重命名为ROOT.war)

打包后的项目的物理地址为:

5.利用FlashFXP上传到Linux

直接上传到Linux主机的/home目录下:

6.使用docker命令将ROOT.war复制到容器的/usr/local/tomcat/webapps

#docker cp 源文件 容器id:目标目录
#使用docker命令复制,ROOT.war会自动解压
[root@localhost home]# docker cp ROOT.war 7a8ff5f86b48:/usr/local/tomcat/webapps

7.重启tomcat容器

[root@localhost home]# docker restart  7a8ff5f86b48

8.此时就可以使用Linux的ip:tomcat映射给Linux的端口访问了

9.出现问题(图片加载不出来)

如有解决的方法,敬请告知

10.使用Linux IP:tomcat port/项目名访问

补上,更简洁的方式就是不用重命名打包后的文件,直接复制进去,使用Linux IP:tomcat port/项目名访问,如下

11.注意

1.重新开启虚拟机的时候,需要创建docker容器,systemctl start docker 2.启动项目的时候要确保所有中间件都创建了容器

经验分享 程序员 微信小程序 职场和发展