记录一次linux+docker下tomcat部署https项目
更改tomcat的conf目录下 的server.xml
首先建议在你的tomcat目录下创建一个cert的目录,然后把你的证书放到cert目录下面,然后在你的conf目录下的server.xml加入下面这段配置
***这里的80就是你的http端口号(建议采用80),redirectPort重定向到https的443端口(建议采用443)***
<Connector URIEncoding="UTF-8" connectionTimeout="20000" maxHttpHeaderSize="855360" maxPostSize="61943040" port="80" protocol="HTTP/1.1" redirectPort="443"/>
<Connector port="443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/这里是你的证明名字"
keystoreType="PKCS12"
keystorePass="这里是你的证书密码"
clientAuth="false"/>
如果你不用域名的方式访问则不需要改如下配置,如果需要,就更改一下
最下面原有的Engine标签注释掉留做备份,改成下面的,域名和ip地址更换成你自己的
<Engine name="Catalina" defaultHost="你的域名">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="你的域名" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="你的那台服务器的内网ip地址" appBase="ipapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false"/>
</Engine>
然后你这个时候tomcat的配置完成了,linux服务器需要把80端口和443端口放开,还有一个很重要的点!切记!要开放docker对该tomcat容器的端口映射,否则访问是无效的
端口映射修改 hostconfig.json和config.v2.json 这两个配置文件
需要照葫芦画瓢加一个端口映射,怎么添加可以参考下面帖子https://www.cnblogs.com/kingsonfu/p/11578073.html
照葫芦画瓢↓↓↓↓↓↓↓↓↓↓↓(还是放一张截图吧)
切记修改这两个json配置文件之前要先停掉docker,否则修改无效!