【Linux学习笔记】Docker下安装tomcat及外部挂载
Docker下安装tomcat及外部挂载一、Docker安装二、Tomcat安装2.1、创建存放tomcat的根目录2.2、创建tomcat相关目录一、Docker安装docker安装传送门二、Tomcat安装2.1、创建存放tomcat的根目录首先在系统下创建一个如下图的app目录,用来存放tomcat的外挂目录2.2、创建tomcat相关目录docker run -d -p ...
Docker下安装tomcat及外部挂载
一、Docker安装
二、Tomcat安装
2.1、下载tomcat镜像
# 默认下载最新版本的tomcat
docker pull tomcat
三、启动tomcat
3.1、启动
# –name : 是给容器起一个别名,方便使用,不然docker会默认给容器一个随机字符串的名称
# -p : 前边的8080是本机的端口,冒号后面的8080是docker容器的端口,tomcat默认是8080
docker run -p 8080:8080 -d --name mytomcat2 tomcat:latest
这里需要注意的是-p命令,本机端口:docker中的应用的端口。两个端口的含义需要区分一下。
3.2、启动成功后访问tomcat首页出现404问题
这里其实已经说明,我们的tomcat已经起了。端口什么的都配好了。这里需要注意的是如果用的是云服务器,需要确认一下firewall、iptables等防火墙和安全策略是否都已经开启了你需要的端口。
解决方案
当通过下面的命令进入到docker中的tomcat中的时候,发现tomcat目录下多了下面截图中的一个webapps.dist目录
# 进度到mytomcat2应用中
docker exec -it mytomcat2 bash
进度到webapps.dist文件夹中,发现有类似webapps下的目录,而webapps下的那些目录却没有。
于是,可以将webapps.dist下的目录都拷贝一份到webapps目录中。
# 拷贝文件
cp -r webapps.dist/* ./webapps
如下图,可以看到webapps.dist中的文件已经都拷贝到了webapps中。
再次访问的时候可以发现,已经能够跳出tomcat的管理界面了。
3.3、部署应用
这里需要将在宿主机上的应用,放到docker的tomcat应用中的webapps目录下。这里需要先退出到宿主机,然后再执行。
# 将本宿主机上的webapps目录下的所有文件拷贝到容器中的tomcat的webapps文件夹中
docker cp webapps/* 193d3c39bf5b:/usr/local/tomcat/webapps
访问页面可以看到已经能访问到页面了。
四、挂载的方式启动tomcat
4.1、创建存放tomcat的根目录
首先在系统下创建一个如下图的app目录,用来存放tomcat的外挂目录
4.2、创建tomcat相关目录
4.3、启动tomcat
docker run -d -p 8088:8080 --name tomcat -v /home/supervision_app/app/webapps:/usr/local/tomcat/webapps -v /home/supervision_app/app/logs:/usr/local/tomcat/logs -v /home/supervision_app/app/conf:/usr/local/tomcat/conf --restart=always tomcat
使用上面的命令行,run一个tomcat容器,发现容器未正常启动。
这是因为上面的命令中,我们也挂载了conf文件夹。这个是tomcat的配置文件夹。
必须把tomcat中的conf中的文件复制到挂载文件上(即/home/supervision_app/app/conf目录下需要有配置文件)
这里我们通过再启动一个tomcat容器,然后从容器中拷贝一个server.xml文件放到挂载conf文件夹中。
# 启动一个不做外部挂载的tomcat,命名为mytomcat2
docker run -p 8080:8080 -d --name mytomcat2 tomcat:latest
# 通过以下命令进度到容器中
docker -it exec mytomcat2 bash
进入到tomcat中之后,可以看到容器中的配置文件目录为conf
执行拷贝命令
# 将tomcat容器中的配置文件拷贝到当前文件夹
docker cp mytomcat2:/usr/local/tomcat/conf/ ./home/supervision_app/conf/
重启tomcat,后发现已经可以启动了。
重新访问,我们发现已可以访问到。
更多推荐
所有评论(0)