接上一篇:Docker容器
学习了docker镜像操作、容器操作以后,我们来进行具体的应用。
部署SSM项目到linux中:《部署SSM项目到Linux》,现在使用docker再次部署一次,这次使用docker运行两个容器tomcat和MySQL。
在Xterm中根目录~下输入ls查看
使用docker运行我的ssm项目,也需要相同的步骤把项目打包。这里我们先创建mysql容器和tomcat容器再打包,因为项目中db.properties文件连接数据库的信息,比如username和password,可能需要更改。
接下来
使用docker,创建tomcat容器、mysql容器
先关闭使用linux安装的tomcat和MySQL(Linux安装tomcat、Linux下载安装MySQL)
♦️关闭tomcat
( 图是为了我在pc端看的方便😳)
♦️关闭mysql
输入以下命令关闭mysql服务
systemctl stop mysqld
输入以下命令关闭mysql自动启动
systemctl disable mysqld
创建mysql容器
想运行一个mysql容器,首先要Docker pull拉取镜像,然后docker run命令运行这个镜像。
但如果执行docker run命令的时候,当前镜像不存在,会自动去仓库拉取。
所以我们就不用去仓库pull了
使用docker run命令自动去pull
♦️先去复制路径
运行mysql容器
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root daocloud. io/library/mysql:5.7.4
Docker run命令,Option为-e
,
注意!这里设置MySQL的密码为root:
-e MYSQL_ROOT_PASSWORD=root
命令最后的:
daocloud. io/library/mysql:5.7.4
是刚刚在DaoCloud上复制的路径
其他参数-d 、-p 、--name
在上一篇中写过:Docker容器
如上图,输入命令以后
回车以后看第一行,Unable to find image
没有找到镜像,就会自动帮你去pull
mysql镜像下载好了以后,打开SQLyog
♦️新建连接
建立一下链接
这个主机名和IP地址填你Xterm连接的这个IP地址。
用户名和密码都是root。(刚刚Docker run命令中设置的)
新建连接以后就是
♦️导入导出数据库
与这篇文章操作相同:部署ssm项目到linux中
运行Tomcat容器
前面2篇已经搞定,只需要将SSM项目的war包部署到Tomcat容器内部即可
现在修改项目中db.properties文件连接数据库的信息,username和password都改为root
接着就可以把项目打包了。
打开terminal,输入mvn clean package -Dsikptest
打包的项目在项目target包下
接下来,依次输入以下命令
rm -f ssm.war
删除一开始war包
mv ssm-1.0-SNAPSHOT.war ssm.war
重命名
docker ps
查看所有运行的容器!下面图片中写错了,查看所有镜像的命令是docker images
查看所有运行的容器,发现只有mysql,所以现在还要运行一下tomcat容器。
依次输入以下命令
🔹docker run -d -p 8080:8080 --name tomcat b8
运行tomcat容器
🔹docker ps
查看所有运行的容器,发现tomcat的容器ID => CONTAINER ID为febfbe5791fb
🔹docker cp ssm. war fe:/usr/local/tomcat/webapps/
其中fe为刚刚的容器ID,/usr/local/tomcat/webapps/
是tomcat容器内部的webapps目录的路径。
该Docker cp命令将宿主机的内容(ssm.war)复制到tomcat容器内部
复制到Tomcat容器内以后
打开浏览器输入
https://192.168.199.10:8080/ssm
(与Xterm中一致IP地址,加上我项目的访问路径)
就可以运行部署到容器中的ssm项目了
上图192.168.10.8是
8080是
ssm是war包的名称
访问不到?
不行的话: