项目作者: Aakarshan20

项目描述 :
自定義的tomcat9 dockerfile
高级语言: Dockerfile
项目地址: git://github.com/Aakarshan20/DockerFile.git
创建时间: 2020-01-19T13:57:31Z
项目社区:https://github.com/Aakarshan20/DockerFile

开源协议:

下载


DockerFile For tomcat

執行dockerfile前
下載這包

  1. sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz

和這包

  1. jdk-8u202-linux-x64.tar.gz

jdk用官網下載前要登入, 沒辦法wget, 所以先載好再丟到server中

如果兩包的版本有不同 就修改dockerfile的 這5行 修改成相應的版本

  1. ADD apache-tomcat-9.0.8.tar.gz /usr/local
  2. ADD jdk-8u202-linux-x64.tar.gz /usr/local
  3. ...
  4. ENV JAVA_HOME /usr/local/jdk1.8.0_202
  5. ...
  6. ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.8
  7. ENV CATALINA_BASE /usr/local/apache-tomcat-9.0.8

build Dockerfile(在git裡面)

執行git裡面 DockerCommend 內的指令

進nginx 設定

  1. server {
  2. listen 8080;
  3. server_name _;
  4. root /var/www/;
  5. index index.html index.htm index.jsp;
  6. location / {
  7. index index.jsp;
  8. proxy_pass http://127.0.0.1:9080;#轉向tomcat container處理
  9. }
  10. }

進入容器
(如果版號不同 自行指定)

  1. cd apache-tomcat-9.0.8/
  2. cd conf

配置以下參數 以便進入 tomcat的manager app

編輯xml

  1. vim tomcat-users.xml

加入以下權限與用戶名(username 與 password可以改)

  1. <role rolename="manager"></role>
  2. <role rolename="manager-gui"></role>
  3. <role rolename="admin"></role>
  4. <role rolename="admin-gui"></role>
  5. <role rolename="manager-script"></role>
  6. <role rolename="manager-jmx"></role>
  7. <role rolename="manager-status"></role>
  8. <user username="tomcat" password="tomcat" roles="admin-gui,admin,manager-gui,manager,manager-script,manager-jmx,manager-status"></user>

再進入以下目錄

  1. /usr/local/apache-tomcat-9.0.8/webapps/manager/META-INF

修改以下檔案

  1. vim context.xml

將Valve 標籤註解

  1. <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
  2. allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" ></Valve>-->

虛擬目錄配置

編輯conf 的server.xml

節點間 添加以下代碼 會把/myweb路由 指向f槽的myweb目錄下

  1. <Context paty="/myweb" docBase="f:\myweb"></Context>