Browse Source

initial import

NIX software 3 years ago
commit
4356237ce1

+ 8 - 0
bin/env.sh.sample

@@ -0,0 +1,8 @@
+export NETWORK=labkey_network;
+export POSTGRES_DIR=$HOME/postgresql/data;
+export LABKEY_DIR=$HOME/labkey
+export TOMCAT_DIR=$HOME/tomcat8
+export COMPOSE=$HOME/config/labkey-compose.yaml
+export DOCKERCOMPOSE=$HOME/.docker/cli-plugins/docker-compose
+export PGPASS=somethingSecret
+#other variables

+ 52 - 0
bin/installLabkey.sh

@@ -0,0 +1,52 @@
+#!/bin/bash
+
+:x
+
+LABKEY=LabKey22.3.2-3-community
+
+if [ $# -gt 0 ] ; 
+then
+	case $1 in
+	18.1)
+		LABKEY=LabKey18.1-57017.17-professional-bin;;
+	18.3)
+		LABKEY=LabKey18.3.3-62784.7-community-bin;;
+	20.7)
+		LABKEY=LabKey20.7.8-66016.22-community-bin;;
+	21.1)
+		LABKEY=LabKey21.11.10-11-community;;
+	esac;
+
+fi;
+
+echo "Using $LABKEY";
+
+SFW_SRC=$HOME/software/packages/$LABKEY.tar.gz
+LABKEY_BASE=$HOME/labkey
+SFW_DIR=$HOME/software/src
+
+if [ ! -d $LABKEY_BASE ] ; 
+then
+	mkdir $LABKEY_BASE;
+fi;
+
+CFG_DIR=$HOME/config
+LABKEY_DIR=$SFW_DIR/$LABKEY;
+
+LINK_DIRS=("tomcat-lib" "labkeywebapp" "modules" "pipeline-lib")
+
+if [ ! -d ${LABKEY_DIR} ] ; then
+  	cd ${SFW_DIR};
+  	tar xvzf ${SFW_SRC};
+  	echo "Using distribution in ${LABKEY_DIR}";
+fi;
+
+for d in ${LINK_DIRS[@]} ; 
+do
+	  if [ -L ${LABKEY_BASE}/$d ] ;
+	  then
+		  rm ${LABKEY_BASE}/$d;
+	  fi;
+	  ln -s ${LABKEY_DIR}/$d ${LABKEY_BASE}/$d;
+done;
+

+ 6 - 0
bin/startLabkey.sh

@@ -0,0 +1,6 @@
+#!/bin/bash
+
+. $(dirname $0)/env.sh
+docker network create -d bridge $NETWORK
+$DOCKERCOMPOSE -f $COMPOSE up -d;
+

+ 6 - 0
bin/startPGOnly.sh

@@ -0,0 +1,6 @@
+#!/bin/bash
+
+. $(dirname $0)/env.sh
+docker network create -d bridge $NETWORK
+$DOCKERCOMPOSE -f $COMPOSE up -d db;
+

+ 6 - 0
bin/stopLabkey.sh

@@ -0,0 +1,6 @@
+#!/bin/bash
+
+. $(dirname $0)/env.sh
+$DOCKERCOMPOSE -f $COMPOSE down;
+docker network rm $NETWORK;
+

+ 17 - 0
config/Dockerfile

@@ -0,0 +1,17 @@
+FROM tomcat:9-jdk17-temurin
+
+RUN apt-get update && apt-get install -y \
+		dirmngr \
+        	gnupg \
+		apt-transport-https \
+		ca-certificates \
+		software-properties-common \
+	&& apt-key adv --keyserver keyserver.ubuntu.com \
+		--recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 \
+	&& add-apt-repository \
+		'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' \
+	&& apt-get update \
+	&& apt-get install -y r-base \
+	&& rm -rf /var/lib/apt/lists/*
+
+LABEL "name"="tomcatR"

+ 1 - 0
config/labkey-compose.yaml

@@ -0,0 +1 @@
+labkey-compose22.3.yaml

+ 43 - 0
config/labkey-compose18.1.yaml

@@ -0,0 +1,43 @@
+services:
+
+  db:
+    image: postgres:12
+    volumes: 
+       - ${POSTGRES_DIR}:/var/lib/postgresql/data
+    environment:
+       - POSTGRES_USER=postgres
+       - POSTGRES_PASSWORD=muzikolog
+    ports:
+       - '5432'
+
+
+  web:
+    depends_on:
+        - db
+    image: tomcat:9.0.62-jdk11-temurin-focal
+    volumes:
+      - ${LABKEY_DIR}/labkeywebapp:/usr/local/labkey/labkeywebapp
+      - ${LABKEY_DIR}/modules:/usr/local/labkey/modules
+      - ${LABKEY_DIR}/pipeline-lib:/usr/local/labkey/pipeline-lib
+      - ${LABKEY_DIR}/externalModules:/usr/local/labkey/externalModules
+      - ${HOME}/software/install/jdk:/usr/local/jdk
+      - ${TOMCAT_DIR}/bin/setenv.sh:/usr/local/tomcat/bin/setenv.sh
+      - ${TOMCAT_DIR}/conf/server.xml:/usr/local/tomcat/conf/server.xml
+      - ${TOMCAT_DIR}/conf/key.pem:/usr/local/tomcat/conf/key.pem
+      - ${TOMCAT_DIR}/conf/cert.pem:/usr/local/tomcat/conf/cert.pem
+      - ${TOMCAT_DIR}/conf/ca-chain.pem:/usr/local/tomcat/conf/ca-chain.pem
+      - ${LABKEY_DIR}/tomcat-lib/jtds.jar:/usr/local/tomcat/lib/jtds.jar
+      - ${LABKEY_DIR}/tomcat-lib/labkeyBootstrap.jar:/usr/local/tomcat/lib/labkeyBootstrap.jar
+      - ${LABKEY_DIR}/tomcat-lib/mail.jar:/usr/local/tomcat/lib/mail.jar
+      - ${LABKEY_DIR}/tomcat-lib/mysql.jar:/usr/local/tomcat/lib/mysql.jar
+      - ${LABKEY_DIR}/tomcat-lib/postgresql.jar:/usr/local/tomcat/lib/postgresql.jar
+      - ${LABKEY_DIR}/labkey.xml:/usr/local/tomcat/conf/Catalina/localhost/labkey.xml  
+    ports:
+      - '8080:8080'
+      - '8443:8443'
+    
+
+networks:
+   default:
+     external:
+        name: labkey_network

+ 43 - 0
config/labkey-compose22.3.yaml

@@ -0,0 +1,43 @@
+services:
+
+  db:
+    image: postgres:14.2
+    volumes: 
+       - ${POSTGRES_DIR}:/var/lib/postgresql/data
+    environment:
+       - POSTGRES_USER=postgres
+       - POSTGRES_PASSWORD=$PGPASS
+    ports:
+       - '5432'
+
+
+  web:
+    depends_on:
+        - db
+    #image: tomcat:9-jdk17-temurin
+    build: .
+
+    volumes:
+      - ${LABKEY_DIR}/labkeywebapp:/usr/local/labkey/labkeywebapp
+      - ${LABKEY_DIR}/modules:/usr/local/labkey/modules
+      - ${LABKEY_DIR}/pipeline-lib:/usr/local/labkey/pipeline-lib
+      - ${LABKEY_DIR}/externalModules:/usr/local/labkey/externalModules
+      - ${LABKEY_DIR}/files:/usr/local/labkey/files
+      - ${TOMCAT_DIR}/bin/setenv.sh:/usr/local/tomcat/bin/setenv.sh
+      - ${TOMCAT_DIR}/conf/server.xml:/usr/local/tomcat/conf/server.xml
+      - ${TOMCAT_DIR}/conf/key.pem:/usr/local/tomcat/conf/key.pem
+      - ${TOMCAT_DIR}/conf/cert.pem:/usr/local/tomcat/conf/cert.pem
+      - ${TOMCAT_DIR}/conf/ca-chain.pem:/usr/local/tomcat/conf/ca-chain.pem
+      - ${LABKEY_DIR}/tomcat-lib/labkeyBootstrap.jar:/usr/local/tomcat/lib/labkeyBootstrap.jar
+      - ${LABKEY_DIR}/tomcat-lib/javax.activation.jar:/usr/local/tomcat/lib/javax.activation.jar
+      - ${LABKEY_DIR}/tomcat-lib/mail.jar:/usr/local/tomcat/lib/mail.jar
+      - ${LABKEY_DIR}/labkey.xml:/usr/local/tomcat/conf/Catalina/localhost/labkey.xml  
+    ports:
+      - '8080:8080'
+      - '8443:8443'
+    
+
+networks:
+   default:
+     external:
+        name: labkey_network

+ 57 - 0
labkey/labkey.xml

@@ -0,0 +1,57 @@
+<?xml version='1.0' encoding='utf-8'?>
+<Context docBase="/usr/local/labkey/labkeywebapp" reloadable="true" crossContext="true">
+    
+    <Resource name="jdbc/labkeyDataSource" auth="Container"
+        type="javax.sql.DataSource"
+        username="postgres"
+        password="muzikolog"
+        driverClassName="org.postgresql.Driver"
+	url="jdbc:postgresql://db:5432/labkey"
+        maxTotal="20"
+        maxIdle="10"
+        maxWaitMillis="120000"
+        accessToUnderlyingConnectionAllowed="true"
+        validationQuery="SELECT 1"
+        />
+
+    <Resource name="mail/Session" auth="Container"
+        type="javax.mail.Session"
+        mail.smtp.host="@@smtpHost@@"
+        mail.smtp.user="@@smtpUser@@"
+        mail.smtp.port="@@smtpPort@@"/>
+
+    <Resources cachingAllowed="true" cacheMaxSize="20000" />
+
+    <Loader loaderClass="org.labkey.bootstrap.LabKeyBootstrapClassLoader" />
+
+    <!-- Encryption key for encrypted property store and other potentially sensitive content -->
+    <Parameter name="EncryptionKey" value="@@encryptionKey@@" />
+
+    <!--@@extraJdbcDataSource@@
+    <Resource name="jdbc/@@extraJdbcDataSource@@" auth="Container"
+              type="javax.sql.DataSource"
+              username="@@extraJdbcUsername@@"
+              password="@@extraJdbcPassword@@"
+              driverClassName="@@extraJdbcDriverClassName@@"
+              url="@@extraJdbcUrl@@"
+              maxTotal="20"
+              maxIdle="10"
+              accessToUnderlyingConnectionAllowed="true"
+              validationQuery="SELECT 1"/>
+    @@extraJdbcDataSource@@-->
+
+    <!-- mzML support via JNI -->
+    <!-- 
+    <Parameter name="org.labkey.api.ms2.mzmlLibrary" value="pwiz_swigbindings"></Parameter>
+    -->
+
+    <!-- Pipeline configuration -->
+    <!--@@pipeline@@    <Parameter name="org.labkey.api.pipeline.config" value="@@pipelineConfigPath@@"/> @@pipeline@@-->
+
+    <!--@@jmsConfig@@ <Resource name="jms/ConnectionFactory" auth="Container"
+        type="org.apache.activemq.ActiveMQConnectionFactory"
+        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
+        description="JMS Connection Factory"
+        brokerURL="vm://localhost?broker.persistent=false&amp;broker.useJmx=false"
+        brokerName="LocalActiveMQBroker"/> @@jmsConfig@@-->
+</Context>

+ 1 - 0
labkey/pipeline-lib

@@ -0,0 +1 @@
+/home/labkey/software/src/LabKey22.3.2-3-community/pipeline-lib

BIN
software/packages/LabKey22.3.2-3-community.tar.gz


+ 4 - 0
tomcat8/bin/setenv.sh

@@ -0,0 +1,4 @@
+#additional variables for tomcat
+export CATALINA_OPTS="-Dlog4j2.formatMsgNoLookups=true"
+export CATALINA_OPTS="${CATALINA_OPTS} -Duser.language.en -Duser.region=US"
+export JAVA_OPTS="$JAVA_OPTS -Xms2g -Xmx2g -XX:-HeapDumpOnOutOfMemoryError"

+ 64 - 0
tomcat8/conf/NIXLJU-CA_chain.crt

@@ -0,0 +1,64 @@
+-----BEGIN CERTIFICATE-----
+MIIFdjCCA16gAwIBAgIBADANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJTSTER
+MA8GA1UECAwIU2xvdmVuaWExEjAQBgNVBAcMCUxqdWJsamFuYTEMMAoGA1UECgwD
+TklYMQ8wDQYDVQQDDAZOSVgtQ0EwHhcNMjAwNjA3MTI0MjM1WhcNMjUwNjA3MTI0
+MjM1WjBCMQswCQYDVQQGEwJTSTERMA8GA1UECAwIU2xvdmVuaWExDDAKBgNVBAoM
+A05JWDESMBAGA1UEAwwJTklYTEpVLUNBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A
+MIICCgKCAgEA4nzdurMWpVQ5rO/Hm/dQkXSxD9GU6KZKfk4fAYS0Mu6AfH/EHf2p
+h02BJfoM2r6upxZExhtOB8XY9nnO0/7TFBT7OE3YBKVbxSOIwgKUxkVZCQrkQ8wa
+VH2mHGE4AhekLRzOjpQIcMxgOR32JlLBV8HPf6jIppWJLzoD30UlBtefC4CPHwbE
+HvxzcKlVUnzA0wk5mjOyaBVRdw8JlYTL7dFkyamrZczNYdmyjg1NidiyqJG6fd/e
+oD/kr/4V6OxkZTTTtaPbaw6NXZl7Aivo4VXvLmOb1A+XEtYAEbp7Qa+I7fldMvcP
+f6ItOWmQql2O6mdgRjuYuLnk+m1MAQh6HFzAEE8OlHE4aJKcqJuTerAseDfAA0Z7
+gUV1JBFmclR0Copz1QJRuVHJVXc2AJnbJggNTDJUlwWldM0vfKYb6Qaw2xs+lVAY
+8fI+EDJV5z1fqTZ1EuyTNnumjYYrdfdC1osKHExG2rLM5m51jdtPXwez4eJ+H7S9
+tqkvJCZp1SoyOWCVqcepGeDialltQIcTVuVkjFLLvtmet1dlXwT323iGxZ+gYlQH
+L4yFRKKeCJFPBBj4MU//0e2ZJJjZsLOucD1LUTSVjHPEDkf/9OQGq906plTy0XQS
+5t7mvQC3mGNcBGzUp10NNeXtWG6wtSgP4NvtDGKYgiE47JQNKmV3B6UCAwEAAaNm
+MGQwHQYDVR0OBBYEFEh21UUhOHHFdsZdbz74mxoz0kNlMB8GA1UdIwQYMBaAFO3o
+lq09jlMvY20TtYY+l8NiVBpUMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/
+BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBG3kI93BFs1k+MaGpDCoeWAe7kbkV8
+YCPQEUaAvcR3tyc6TEthVBw8I44vc8dndjt3m+pfBnpBCVM0BdTYS9ZiQDQajXfq
+u4zFhaQJI7DISRxLC3JFhZYN9dL6L8VNu2dBMI0pDHsWE0ABKYTEOgCy3eFvpJfT
+MXa59Ynwg9Cqw/V3EL7pp5uTQiRHmldgq7P/uwGTZX+f8MLsGL/ch5lCkPjV8/R5
+N/hUt1A2DnWrMqdJedB7vdQLywcNSP8skPE4CkeaAlFQyN56X1o+JRsCf76q4kDk
+cRiGoFeUUfdlw37CnsGtYT0iklwnPd5f6ECQP3tjlUqHGYlwBSs3MmFeW3tcUiTD
+p310Sq+rrnH8PLd3LaSt3nljIqg9Zsgs4vfnunbTdW+Q5SEbExW9SRBCPxIsDFA4
+UH+gPYp6OpD5K8K7J/nqGsbUmG0KF7mXDIvnjAsA8af6zPCq09rjBVZtJKm97Fl7
+16kXW6XlB0cr7vYw0059qhy3UmrL9OS85+hsIrB0LZit9zt6wkMQfh3e75EYYIqQ
+bjvnLTsoNBrrSXWmpNXIvsiokOzjib8AZhYLE/g26WI8tsMawu98pcYl05q05hr2
+COp6rPC3Lr8HdrjX3/0qnRWUu+Xfck7O3V+D4KwcALY6Dt3BoUHqxmULGNXn0cfV
+ym59CCGiscnsoQ==
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIFhzCCA2+gAwIBAgIUce4sml3L5g9eb8RR9yDP6ahgTvQwDQYJKoZIhvcNAQEL
+BQAwUzELMAkGA1UEBhMCU0kxETAPBgNVBAgMCFNsb3ZlbmlhMRIwEAYDVQQHDAlM
+anVibGphbmExDDAKBgNVBAoMA05JWDEPMA0GA1UEAwwGTklYLUNBMB4XDTIwMDYw
+NzExMjUzMVoXDTMwMDYwNTExMjUzMVowUzELMAkGA1UEBhMCU0kxETAPBgNVBAgM
+CFNsb3ZlbmlhMRIwEAYDVQQHDAlManVibGphbmExDDAKBgNVBAoMA05JWDEPMA0G
+A1UEAwwGTklYLUNBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEArYoG
+eHYZoplJTnOn880+isGWYZ4n9QlOif6TOqXQUEA0vxwkdiBDmtZEKZKpddey3yZ8
+aBFjBXvNHNLjS9wjebNhKnrKjH7sCIkKGw1ZLcwBWGF0iVIaR1VhrN6pBLl+diJN
+fYAOS3sUB0z/k1XW4QjHoFTw8omX6TR6EbJdeObYQI7/lCMDfjZL6xQ7yrcOwdr0
+jzyTRmox1Mfqasf2A8OtJxHu4zhbk6gcrXYpTYq1RZnvt1rcfnnUm1D8xbPayNss
+4bl3IRiHGSN5soWO1nukYM8uQUiIWK0dBCiQ8KO/z7m/rgseVqrY3HD9KDVfqwod
+TtXPi+UTUUIj5f+4edggR1wbyt5ul7kz/4hStI/m4NdZW8sICz6KuGvlpUxlk6dN
+NvG24TdZVY7D9yjd86cYvgDRQO168juRPlT0vgGrkS0HjPfmUe7sjSQmR0brq5jF
+hE/5lU23kDAgp+3wTwhgDFbUD6EQOibKvbL1Pkb+aFSspkXivy8X99L9zu3VJGDb
+YF1Hq/MabCYqq3Cw2O4qv1ZmVJoalLzER6C0g53ZeY50Zy+8g9It9vqXD+5VPYsK
+KGieWjyfB5ChJRxdHR/wVj+1fUnJWTDb6jWzRk53Vdf6fugBTbKTFcgoRMOwL+43
+zQfGOkdrY4rYhTrku1ucpEyd0FsMi/xrS9UrT8sCAwEAAaNTMFEwHQYDVR0OBBYE
+FO3olq09jlMvY20TtYY+l8NiVBpUMB8GA1UdIwQYMBaAFO3olq09jlMvY20TtYY+
+l8NiVBpUMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIBAIzVHNmw
+2qT3bLM1bjPWanKSeTEMnVDfGD0SnUih3YThXEhFNlnXD8nevrfU8U+2ymi2L94A
+LF97CRepa4ndKPuBsWNrnjAmJrYxgHWBzkWv0s/AT5Q/OQhR/JAfzaUEkKKX/scI
+TzUJ4djcEE+s6AY2GUMtErXVg/gE7Nsp+UD9TA96ItRQE6DJr1Xac7C5djCV2oVp
+z38btjv/xaW53om7COfatbuC4o8t8CoDFNPjLt5KroOKQtWN+9Q4+hyKtreiFDdT
+SmQeqHgTSFE7yKSMbkEAf05+w+NVKCFxiaL44ykaAT4KSRgxopd7bbjCykMEhn8x
+frTY+VXug6W+HczvuibweUcm1LV28bwcSZXHP8C83+9f7ioAc6QLe1HRbOAG2sWa
+Urt2Hc6BXF9QyoLtp+ZsHU7FYG/0RMldr3OSdq8G104dN49VeW2t2AJhojYKEyIU
+o74cn049i3JPRl635kG1MT21QANH8YrAZArrpEg4w0toZeKM4nOsLkTFOk44zmTq
+OK86PaU5J330XrfCoxHTYAE6yUG4Jhbwh41gfHapmlbQs9QpMLfxiteJY2YFA4Hy
+/sYt7oSFtrUjKcQZyAlYeByvk6Zn0Tx6huxLTI5hkTEcAXfRVLQbPyyT978PbrdJ
+Uka1af3XtF6Zsy68Lq7HuLg7KXfMu+FzTIZy
+-----END CERTIFICATE-----

+ 1 - 0
tomcat8/conf/ca-chain.pem

@@ -0,0 +1 @@
+NIXLJU-CA_chain.crt

+ 1 - 0
tomcat8/conf/cert.pem

@@ -0,0 +1 @@
+localhost.crt

+ 1 - 0
tomcat8/conf/key.pem

@@ -0,0 +1 @@
+localhost.key

+ 133 - 0
tomcat8/conf/localhost.crt

@@ -0,0 +1,133 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number: 4141 (0x102d)
+        Signature Algorithm: sha256WithRSAEncryption
+        Issuer: C=SI, ST=Slovenia, O=NIX, CN=NIXLJU-CA
+        Validity
+            Not Before: Apr  5 15:13:04 2022 GMT
+            Not After : Apr 10 15:13:04 2023 GMT
+        Subject: C=SI, ST=Slovenia, O=NIXLJU, CN=localhost
+        Subject Public Key Info:
+            Public Key Algorithm: rsaEncryption
+                RSA Public-Key: (4096 bit)
+                Modulus:
+                    00:dc:b0:e3:66:a1:40:b9:4c:f4:50:2d:4a:d6:0b:
+                    5b:7b:da:53:f0:00:12:af:86:52:03:2b:98:82:f7:
+                    17:ff:d6:a6:a4:28:73:d9:e9:eb:d1:09:25:24:ce:
+                    7d:01:23:23:e0:31:e4:ff:f3:02:61:6f:8f:96:37:
+                    cf:6d:35:9e:96:40:32:1f:4c:83:b5:15:5d:d2:66:
+                    98:01:b9:eb:c8:db:fb:c3:75:0f:af:36:6e:c4:f2:
+                    ea:4d:ee:ee:38:15:13:3f:34:a2:5d:62:df:84:6d:
+                    e5:40:d9:5d:44:f2:6d:b9:f9:9f:b1:66:4f:53:52:
+                    b5:04:04:0c:ea:b4:d5:15:f4:53:4e:01:61:81:8d:
+                    c1:06:34:f6:53:ef:d9:59:04:61:53:47:eb:f7:a5:
+                    00:d7:d6:9b:2e:e3:91:cb:22:a1:f6:38:2c:a6:6a:
+                    6d:b0:73:1d:83:9c:6d:cd:bb:5c:f7:5a:71:59:f0:
+                    42:1e:05:db:d9:e4:4d:2b:29:15:b2:dc:bf:25:27:
+                    e5:9b:05:01:bd:45:21:df:bb:9f:75:04:ab:1b:2c:
+                    fb:08:f0:55:01:69:c1:d3:28:c8:c3:5b:8c:91:83:
+                    03:2e:61:5a:5b:92:70:0b:53:b3:7d:d8:29:09:24:
+                    94:a3:54:2f:1e:2c:6b:f3:9e:3f:05:ec:7d:94:a5:
+                    25:b3:32:ee:cc:64:c2:a5:2f:17:56:6a:40:55:9b:
+                    ba:6b:4e:d5:58:36:bd:e3:04:02:38:07:6a:42:79:
+                    2e:02:cd:36:d4:a9:96:78:d4:0b:3e:ff:48:00:b0:
+                    96:93:5f:02:79:f3:58:41:f6:07:6d:f4:1e:0f:53:
+                    30:11:37:b5:68:ac:9e:c3:12:53:e7:ca:69:ad:70:
+                    22:4c:84:43:f8:23:fb:ae:85:0e:36:05:2b:a3:96:
+                    17:68:34:13:01:21:3e:2a:81:7e:c7:73:21:f9:54:
+                    05:53:da:ac:ac:8a:e5:58:36:44:1e:ae:0c:c9:f6:
+                    d6:a1:04:00:d9:0a:24:0b:06:42:85:6d:30:04:de:
+                    63:17:a4:31:96:1d:c5:74:c2:6d:76:74:67:af:4b:
+                    3f:ab:eb:e5:e7:70:c0:46:6e:fd:14:a1:58:84:24:
+                    c1:87:51:82:b0:10:f6:f0:d1:55:14:d8:4a:7e:2a:
+                    91:42:78:8b:6c:51:03:90:6a:6a:04:c3:10:d3:e1:
+                    3b:76:48:ff:94:0b:6a:4d:af:3d:83:ee:88:f4:11:
+                    ca:56:4f:5f:00:33:28:06:09:7d:13:23:36:b2:e8:
+                    f7:37:90:98:7e:a1:cd:9a:d6:8c:7e:5f:59:cf:18:
+                    1c:19:a0:00:a0:af:b9:df:0f:72:97:c6:a7:5c:2a:
+                    60:84:f3
+                Exponent: 65537 (0x10001)
+        X509v3 extensions:
+            X509v3 Basic Constraints: 
+                CA:FALSE
+            Netscape Cert Type: 
+                SSL Server
+            Netscape Comment: 
+                OpenSSL Generated Server Certificate
+            X509v3 Subject Key Identifier: 
+                77:78:5C:FE:B3:38:4C:EB:D6:D4:39:45:C3:3F:23:25:4C:44:CD:6E
+            X509v3 Authority Key Identifier: 
+                keyid:48:76:D5:45:21:38:71:C5:76:C6:5D:6F:3E:F8:9B:1A:33:D2:43:65
+                DirName:/C=SI/ST=Slovenia/L=Ljubljana/O=NIX/CN=NIX-CA
+                serial:00
+
+            X509v3 Key Usage: critical
+                Digital Signature, Key Encipherment
+            X509v3 Extended Key Usage: 
+                TLS Web Server Authentication
+    Signature Algorithm: sha256WithRSAEncryption
+         88:3c:f8:c2:09:e9:83:8d:21:30:4b:05:f6:9d:e1:7d:8e:5f:
+         d9:1c:04:b8:f0:d4:1a:c7:dd:57:ea:d6:f0:c6:74:2f:27:b6:
+         56:5f:2c:2c:32:26:b3:33:db:9b:49:74:b8:6c:b4:53:3c:11:
+         ed:1a:7f:60:d6:e4:bb:61:5f:6f:d9:85:bb:94:2e:c3:c1:8d:
+         90:aa:2a:8f:98:5e:f0:b4:fa:78:fa:2b:d3:8e:e8:64:da:06:
+         71:d4:43:8e:98:8d:68:fd:e8:f6:27:13:bb:3c:fc:84:56:18:
+         7f:5d:84:5c:e6:9d:37:eb:b4:29:b6:b6:5e:5e:6c:67:44:01:
+         10:71:0d:16:31:cb:51:68:a3:29:83:60:5e:ef:9f:98:65:8e:
+         73:69:7e:08:17:7c:05:f1:bb:79:c9:ad:6b:50:58:c8:5d:be:
+         6b:e4:07:27:23:d7:7e:e5:eb:6a:f4:f2:16:59:6a:0f:b1:fb:
+         77:74:71:7d:d7:82:ee:95:60:26:0c:67:55:a8:6c:b8:f9:c5:
+         62:93:a1:31:98:cc:3a:c7:f6:74:b5:5d:e2:2d:b2:ef:b3:52:
+         85:4c:4d:27:c5:a2:84:a5:de:dc:16:f1:bc:f2:9a:28:bc:4f:
+         0c:3f:db:a9:c5:ac:97:f7:18:6e:31:61:a5:88:72:b9:7c:2d:
+         a0:25:08:86:b9:be:b5:dd:54:2a:1f:af:a1:dd:e8:bf:28:fa:
+         2e:95:98:6b:29:29:6d:99:02:4c:58:1b:92:8d:83:b3:1d:25:
+         57:a8:26:8e:c4:e4:75:6c:39:65:fc:97:b5:a7:59:35:df:96:
+         26:10:6a:b2:22:42:56:70:ad:92:1d:12:cb:23:7c:c7:89:86:
+         1e:ed:da:25:77:a4:d3:56:e5:7a:10:d5:79:c0:8c:62:e6:0b:
+         28:8c:ac:df:e2:eb:2d:fe:0c:36:32:22:5f:b8:93:c5:13:01:
+         6e:42:41:69:2c:e3:eb:85:84:cb:a0:9c:9a:99:00:14:85:cc:
+         4a:0c:43:8b:fc:ad:61:f8:26:8f:a0:90:37:9a:c1:de:1b:f6:
+         ac:b2:30:d7:75:07:17:dc:e0:f3:c3:7a:f5:de:20:b7:86:a8:
+         36:1b:69:5c:ec:16:33:68:26:c4:09:19:72:2d:2e:a3:26:13:
+         82:4c:0c:1e:fa:f7:0b:d8:ba:23:ed:85:de:c8:ec:94:4c:05:
+         38:87:bb:c0:74:4a:bb:4e:c3:d7:34:e5:6a:dd:a9:fd:d4:89:
+         7d:14:36:32:d7:42:a1:1a:2e:f8:17:fb:1d:71:5d:cc:0b:33:
+         9e:c1:d6:80:70:da:5e:72:25:df:71:6e:04:a2:9e:c7:fc:f7:
+         24:76:ea:94:90:db:86:eb
+-----BEGIN CERTIFICATE-----
+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
+-----END CERTIFICATE-----

+ 51 - 0
tomcat8/conf/localhost.key

@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+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
+-----END RSA PRIVATE KEY-----

+ 170 - 0
tomcat8/conf/server.xml

@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!-- Note:  A "Server" is not itself a "Container", so you may not
+     define subcomponents such as "Valves" at this level.
+     Documentation at /docs/config/server.html
+ -->
+<Server port="8005" shutdown="SHUTDOWN">
+  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
+  <!-- Security listener. Documentation at /docs/config/listeners.html
+  <Listener className="org.apache.catalina.security.SecurityListener" />
+  -->
+  <!-- APR library loader. Documentation at /docs/apr.html -->
+  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
+  <!-- Prevent memory leaks due to use of particular java/javax APIs-->
+  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
+  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
+  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
+
+  <!-- Global JNDI resources
+       Documentation at /docs/jndi-resources-howto.html
+  -->
+  <GlobalNamingResources>
+    <!-- Editable user database that can also be used by
+         UserDatabaseRealm to authenticate users
+    -->
+    <Resource name="UserDatabase" auth="Container"
+              type="org.apache.catalina.UserDatabase"
+              description="User database that can be updated and saved"
+              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
+              pathname="conf/tomcat-users.xml" />
+  </GlobalNamingResources>
+
+  <!-- A "Service" is a collection of one or more "Connectors" that share
+       a single "Container" Note:  A "Service" is not itself a "Container",
+       so you may not define subcomponents such as "Valves" at this level.
+       Documentation at /docs/config/service.html
+   -->
+  <Service name="Catalina">
+
+    <!--The connectors can use a shared executor, you can define one or more named thread pools-->
+    <!--
+    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
+        maxThreads="150" minSpareThreads="4"/>
+    -->
+
+
+    <!-- A "Connector" represents an endpoint by which requests are received
+         and responses are returned. Documentation at :
+         Java HTTP Connector: /docs/config/http.html
+         Java AJP  Connector: /docs/config/ajp.html
+         APR (HTTP/AJP) Connector: /docs/apr.html
+         Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
+    -->
+    <Connector port="8080" protocol="HTTP/1.1"
+               connectionTimeout="20000"
+               redirectPort="8443" />
+    <!-- A "Connector" using the shared thread pool-->
+    <!--
+    <Connector executor="tomcatThreadPool"
+               port="8080" protocol="HTTP/1.1"
+               connectionTimeout="20000"
+               redirectPort="8443" />
+    -->
+    <!-- Define an SSL/TLS HTTP/1.1 Connector on port 8443
+         This connector uses the NIO implementation. The default
+         SSLImplementation will depend on the presence of the APR/native
+         library and the useOpenSSL attribute of the AprLifecycleListener.
+         Either JSSE or OpenSSL style configuration may be used regardless of
+         the SSLImplementation selected. JSSE style configuration is used below.
+    -->
+    <!--
+    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
+               maxThreads="150" SSLEnabled="true">
+        <SSLHostConfig>
+            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
+                         type="RSA" />
+        </SSLHostConfig>
+    </Connector>
+    -->
+    <!-- Define an SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2
+         This connector uses the APR/native implementation which always uses
+         OpenSSL for TLS.
+         Either JSSE or OpenSSL style configuration may be used. OpenSSL style
+         configuration is used below.
+    -->
+    
+    <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
+               maxThreads="150" SSLEnabled="true" >
+        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
+        <SSLHostConfig>
+            <Certificate certificateKeyFile="conf/key.pem"
+                         certificateFile="conf/cert.pem"
+                         certificateChainFile="conf/ca-chain.pem"
+                         type="RSA" />
+        </SSLHostConfig>
+    </Connector>
+   
+
+    <!-- Define an AJP 1.3 Connector on port 8009 -->
+    <!--
+    <Connector protocol="AJP/1.3"
+               address="::1"
+               port="8009"
+               redirectPort="8443" />
+    -->
+
+    <!-- An Engine represents the entry point (within Catalina) that processes
+         every request.  The Engine implementation for Tomcat stand alone
+         analyzes the HTTP headers included with the request, and passes them
+         on to the appropriate Host (virtual host).
+         Documentation at /docs/config/engine.html -->
+
+    <!-- You should set jvmRoute to support load-balancing via AJP ie :
+    <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
+    -->
+    <Engine name="Catalina" defaultHost="localhost">
+
+      <!--For clustering, please take a look at documentation at:
+          /docs/cluster-howto.html  (simple how to)
+          /docs/config/cluster.html (reference documentation) -->
+      <!--
+      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
+      -->
+
+      <!-- Use the LockOutRealm to prevent attempts to guess user passwords
+           via a brute-force attack -->
+      <Realm className="org.apache.catalina.realm.LockOutRealm">
+        <!-- This Realm uses the UserDatabase configured in the global JNDI
+             resources under the key "UserDatabase".  Any edits
+             that are performed against this UserDatabase are immediately
+             available for use by the Realm.  -->
+        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
+               resourceName="UserDatabase"/>
+      </Realm>
+
+      <Host name="localhost"  appBase="webapps"
+            unpackWARs="true" autoDeploy="true">
+
+        <!-- SingleSignOn valve, share authentication between web applications
+             Documentation at: /docs/config/valve.html -->
+        <!--
+        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
+        -->
+
+        <!-- Access log processes all example.
+             Documentation at: /docs/config/valve.html
+             Note: The pattern used is equivalent to using pattern="common" -->
+        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
+               prefix="localhost_access_log" suffix=".txt"
+               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
+
+      </Host>
+    </Engine>
+  </Service>
+</Server>