使用 docker 部署web应用到服务器

docker使用tomcat + mysql 容器 部署到服务器web应用

参照博客一 参照博客二

环境:阿里ecs 服务器 contos7 docker 版本忘了,但是应该关系不大 先在阿里配置页面开启阿里云配置的端口 3306 80

先装docker

一、容器互接

1. 拉取镜像

tomcat(tomcat里面内嵌jdk环境,所有不许要手动装) mysql

docker pull tomcat 
docker pull mysql:5.7
docker images  # 查看镜像

2. 运行mysql容器

#             容器别名  	contos端口:容器端口 	账号:root  密码:123456 后台启动  启动镜像版本
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

3. 建立tomcat mysql连接

#           		     		建立连接 mysql容器名:连接别名								
docker run -it -p 80:8080 --link mysql:dbhost --name mytomcat tomcat:latest  /bin/bash
# 如果有下图内容则容器连接成功
cat /etc/hosts    

连接成功

二、war包配置及部署

1.配置

① 查看mysql容器ip地址,

上图的ip就是mysql容器的ip地址 即172.17.0.3 dbhost 6b2fcc546a05 mysql

#             [容器名]
docker inspect mysql

在这里插入图片描述

② 数据源配置

项目配置文件端口是容器内部的端口,而不是映射出来后contos 的端口

在这里插入图片描述

③ 数据

这里建议数据库里面有点基础数据,否则查询出来会有error

可以用数据库连接工具进行连接 我用的是 navicat 连接不上可能是阿里云端口没开放

2.部署

开启第二个终端 ,上一个在tomcat里面的终端别关了

①、上传

[root@izbp13dj8i3kf87927lghsz ~]# rz
#选择文件 (如果不行需要先装插件)

②、部署到tomcat

从主机复制到容器 sudo docker cp host_path containerID:container_path
从容器复制到主机 sudo docker cp containerID:container_path host_path

#我使用的是  
docker cp myblog.war mytomcat:/usr/local/tomcat/webapps

③、在tomcat 里面的终端查看是否有war文件

# 如果关闭了第一个终端,可以用如下命令进入
docker exec -it mytomcat /bin/bash
root@2ab3ead8f61e:/usr/local/tomcat/webapps# ls
#容器删除东西
rm -rf  [directoryName]

在这里插入图片描述

3. 启动

在这里插入图片描述

因为我之前启动了,所以现在就不启动了

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44961083/article/details/106929482