Compare commits
6 Commits
dbp-persis
...
download
Author | SHA1 | Date | |
---|---|---|---|
abff58b562 | |||
|
40c3a3c019 | ||
6261f8b7ab | |||
3a5d21f5e7 | |||
7dadd3b910 | |||
b81ce2e2c9 |
22
.env
22
.env
@@ -1,22 +0,0 @@
|
|||||||
ALFRESCO_DIR=~/alfresco
|
|
||||||
ALFRESCO_LICENSE_DIR=~/alfresco/license
|
|
||||||
|
|
||||||
PROXY_PROTOCOL=http
|
|
||||||
PROXY_HOST=localhost
|
|
||||||
PROXY_PORT=8080
|
|
||||||
IDENTITY_SERVICE_PROTOCOL=http
|
|
||||||
IDENTITY_SERVICE_HOST=auth.example.org
|
|
||||||
IDENTITY_SERVICE_PORT=8080
|
|
||||||
|
|
||||||
ACS_TAG=7.4.1.1
|
|
||||||
ATR_TAG=3.0.0
|
|
||||||
ATE_AIO_TAG=4.0.0
|
|
||||||
ASFS_TAG=3.0.0
|
|
||||||
APS_TAG=2.4.1
|
|
||||||
AIS_TAG=1.8.0.1
|
|
||||||
AAMQ_TAG=latest
|
|
||||||
POSTGRES_TAG=13
|
|
||||||
ASIE_TAG=2.0.8.2
|
|
||||||
ACS_SHARE_TAG=7.4.1.2
|
|
||||||
ALF_SYNC_SERV_TAG=3.9.0
|
|
||||||
ADW_TAG=4.1.0
|
|
||||||
|
11
README.md
11
README.md
@@ -3,14 +3,3 @@
|
|||||||
|
|
||||||
This Git Repository intends to represent environments in Docker Compose. All environments are effectively a derivative of other environments. The original environment is the environment represented by the `base` branch. All derivative environments are represented by other branches. Those branches are named in the format `{core}.{parent}`.
|
This Git Repository intends to represent environments in Docker Compose. All environments are effectively a derivative of other environments. The original environment is the environment represented by the `base` branch. All derivative environments are represented by other branches. Those branches are named in the format `{core}.{parent}`.
|
||||||
|
|
||||||
## Licensing
|
|
||||||
|
|
||||||
This version of Alfresco requires licensing.
|
|
||||||
|
|
||||||
### ACS Enterprise
|
|
||||||
|
|
||||||
The enterprise version of ACS requires a license file for it to work for more than 2 days. This means it isn't really required, but it is becomes important when you utilize any `persist` branch. For licensing to work, you must place your license file in the following directory relative to the user home directory that runs the Docker Compose command: `alfresco/license/acs`. There must be just one file in there that ends in `.lic`.
|
|
||||||
|
|
||||||
### APS
|
|
||||||
|
|
||||||
APS requires a license file for it to work. For licensing to work, you must place your license file in the following directory relative to the user home directory that runs the Docker Compose command: `alfresco/license/aps`. The filename must be `activiti.lic`. You can use symbolic linking if desired.
|
|
||||||
|
@@ -1,301 +1,3 @@
|
|||||||
# Originally sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
|
# Originally sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
|
||||||
#
|
#
|
||||||
version: "3"
|
version: "3"
|
||||||
|
|
||||||
services:
|
|
||||||
|
|
||||||
platform:
|
|
||||||
image: quay.io/alfresco/alfresco-governance-repository-enterprise:${ACS_TAG}
|
|
||||||
environment:
|
|
||||||
JAVA_TOOL_OPTIONS: "
|
|
||||||
-Dencryption.keystore.type=JCEKS
|
|
||||||
-Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding
|
|
||||||
-Dencryption.keyAlgorithm=DESede
|
|
||||||
-Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore
|
|
||||||
-Dmetadata-keystore.password=mp6yc0UD9e
|
|
||||||
-Dmetadata-keystore.aliases=metadata
|
|
||||||
-Dmetadata-keystore.metadata.password=oKIWzVdEdA
|
|
||||||
-Dmetadata-keystore.metadata.algorithm=DESede
|
|
||||||
"
|
|
||||||
JAVA_OPTS: "
|
|
||||||
-Xms512m -Xmx1g
|
|
||||||
-Ddb.driver=org.postgresql.Driver
|
|
||||||
-Ddb.username=alfresco
|
|
||||||
-Ddb.password=alfresco
|
|
||||||
-Ddb.url=jdbc:postgresql://postgres-acs:5432/alfresco
|
|
||||||
-Dindex.subsystem.name=solr6
|
|
||||||
-Dsolr.host=search
|
|
||||||
-Dsolr.secureComms=secret
|
|
||||||
-Dsolr.sharedSecret=alfresco-secret
|
|
||||||
-Dshare.host=${PROXY_HOST}
|
|
||||||
-Dshare.port=${PROXY_PORT}
|
|
||||||
-Dshare.protocol=${PROXY_PROTOCOL}
|
|
||||||
-Dalfresco.host=${PROXY_HOST}
|
|
||||||
-Dalfresco.port=${PROXY_PORT}
|
|
||||||
-Dalfresco.protocol=${PROXY_PROTOCOL}
|
|
||||||
-Daos.baseUrlOverwrite=${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/alfresco/aos
|
|
||||||
-Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\"
|
|
||||||
-Ddeployment.method=DOCKER_COMPOSE
|
|
||||||
-Dcsrf.filter.enabled=false
|
|
||||||
-Dcors.enabled=false
|
|
||||||
-Dtransform.service.enabled=true
|
|
||||||
-Dtransform.service.url=http://transform-router:8095
|
|
||||||
-Dsfs.url=http://shared-file-store:8099
|
|
||||||
-Dlocal.transform.service.enabled=true
|
|
||||||
-Dalfresco-pdf-renderer.url=http://transform-engine-aio:8090
|
|
||||||
-Djodconverter.url=http://transform-engine-aio:8090
|
|
||||||
-Dimg.url=http://transform-engine-aio:8090
|
|
||||||
-Dtika.url=http://transform-engine-aio:8090
|
|
||||||
-Dtransform.misc.url=http://transform-engine-aio:8090
|
|
||||||
-Ddsync.service.uris=${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/sync
|
|
||||||
-Dauthentication.chain=aims:identity-service,builtin:alfrescoNtlm
|
|
||||||
-Didentity-service.authentication.defaultAdministratorUserNames=admin.1
|
|
||||||
-Didentity-service.auth-server-url=${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
|
|
||||||
-Dsystem.content.eagerOrphanCleanup=true
|
|
||||||
-Dsystem.content.orphanProtectDays=0
|
|
||||||
-Djodconverter.enabled=false
|
|
||||||
"
|
|
||||||
depends_on:
|
|
||||||
postgres-acs:
|
|
||||||
condition: service_started
|
|
||||||
activemq:
|
|
||||||
condition: service_started
|
|
||||||
shared-file-store:
|
|
||||||
condition: service_started
|
|
||||||
identity:
|
|
||||||
condition: service_healthy
|
|
||||||
volumes:
|
|
||||||
- "$ALFRESCO_LICENSE_DIR/acs:/usr/local/tomcat/shared/classes/alfresco/extension/license:ro"
|
|
||||||
- acsbin-volume:/usr/local/tomcat/alf_data:rw
|
|
||||||
|
|
||||||
transform-router:
|
|
||||||
image: quay.io/alfresco/alfresco-transform-router:${ATR_TAG}
|
|
||||||
environment:
|
|
||||||
ACTIVEMQ_URL: "nio://activemq:61616"
|
|
||||||
CORE_AIO_URL : "http://transform-core-aio:8090"
|
|
||||||
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
|
|
||||||
depends_on:
|
|
||||||
- activemq
|
|
||||||
- shared-file-store
|
|
||||||
|
|
||||||
transform-core-aio:
|
|
||||||
image: alfresco/alfresco-transform-core-aio:${ATE_AIO_TAG}
|
|
||||||
environment:
|
|
||||||
ACTIVEMQ_URL: "nio://activemq:61616"
|
|
||||||
FILE_STORE_URL: "http://shared-file-store:8099/alfresco/api/-default-/private/sfs/versions/1/file"
|
|
||||||
depends_on:
|
|
||||||
- activemq
|
|
||||||
- shared-file-store
|
|
||||||
|
|
||||||
shared-file-store:
|
|
||||||
image: quay.io/alfresco/alfresco-shared-file-store:${ASFS_TAG}
|
|
||||||
volumes:
|
|
||||||
- shared-file-store-volume:/tmp/Alfresco/sfs
|
|
||||||
|
|
||||||
share:
|
|
||||||
image: quay.io/alfresco/alfresco-governance-share-enterprise:${ACS_SHARE_TAG}
|
|
||||||
environment:
|
|
||||||
REPO_HOST: "platform"
|
|
||||||
CSRF_FILTER_REFERER: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?/?.*"
|
|
||||||
CSRF_FILTER_ORIGIN: "${PROXY_PROTOCOL}://${PROXY_HOST}(:${PROXY_PORT})?"
|
|
||||||
JAVA_OPTS: "
|
|
||||||
-Dshare.host=${PROXY_HOST}
|
|
||||||
-Dshare.port=${PROXY_PORT}
|
|
||||||
-Dshare.protocol=${PROXY_PROTOCOL}
|
|
||||||
-Dalfresco.host=${PROXY_HOST}
|
|
||||||
-Dalfresco.port=${PROXY_PORT}
|
|
||||||
-Dalfresco.protocol=${PROXY_PROTOCOL}
|
|
||||||
-Daims.enabled=true
|
|
||||||
-Daims.realm=alfresco
|
|
||||||
-Daims.resource=acs-share
|
|
||||||
-Daims.authServerUrl=${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
|
|
||||||
-Daims.sslRequired=none
|
|
||||||
-Daims.publicClient=true
|
|
||||||
-Daims.autodetectBearerOnly=true
|
|
||||||
-Daims.alwaysRefreshToken=true
|
|
||||||
-Daims.principalAttribute=preferred_username
|
|
||||||
-Daims.enableBasicAuth=true
|
|
||||||
"
|
|
||||||
|
|
||||||
postgres-acs:
|
|
||||||
image: postgres:${POSTGRES_TAG}
|
|
||||||
environment:
|
|
||||||
POSTGRES_PASSWORD: alfresco
|
|
||||||
POSTGRES_USER: alfresco
|
|
||||||
POSTGRES_DB: alfresco
|
|
||||||
command: postgres -c max_connections=300 -c log_min_messages=LOG
|
|
||||||
volumes:
|
|
||||||
- acsdb-volume:/var/lib/postgresql/data:rw
|
|
||||||
|
|
||||||
search:
|
|
||||||
image: alfresco/alfresco-search-services:${ASIE_TAG}
|
|
||||||
environment:
|
|
||||||
SOLR_ALFRESCO_HOST: platform
|
|
||||||
SOLR_SOLR_HOST: search
|
|
||||||
SOLR_CREATE_ALFRESCO_DEFAULTS: alfresco,archive
|
|
||||||
ALFRESCO_SECURE_COMMS: secret
|
|
||||||
JAVA_TOOL_OPTIONS: "
|
|
||||||
-Dalfresco.secureComms.secret=alfresco-secret
|
|
||||||
"
|
|
||||||
healthcheck:
|
|
||||||
test: "curl -fsS http://localhost:8983/solr"
|
|
||||||
volumes:
|
|
||||||
- solrindex-volume:/opt/alfresco-search-services/data:rw
|
|
||||||
|
|
||||||
activemq:
|
|
||||||
image: alfresco/alfresco-activemq:${AAMQ_TAG}
|
|
||||||
environment:
|
|
||||||
ACTIVEMQ_OPTS_MEMORY: -Xms64m -Xmx256m
|
|
||||||
ACTIVEMQ_ADMIN_LOGIN: alfresco
|
|
||||||
ACTIVEMQ_ADMIN_PASSWORD: alfresco
|
|
||||||
volumes:
|
|
||||||
- activemq-volume:/opt/activemq/data:rw
|
|
||||||
|
|
||||||
sync:
|
|
||||||
image: quay.io/alfresco/service-sync:${ALF_SYNC_SERV_TAG}
|
|
||||||
environment:
|
|
||||||
JAVA_OPTS : "
|
|
||||||
-Xms64m -Xmx256m
|
|
||||||
-Dsql.db.driver=org.postgresql.Driver
|
|
||||||
-Dsql.db.url=jdbc:postgresql://postgres-acs:5432/alfresco
|
|
||||||
-Dsql.db.username=alfresco
|
|
||||||
-Dsql.db.password=alfresco
|
|
||||||
-Dmessaging.broker.host=activemq
|
|
||||||
-Drepo.hostname=platform
|
|
||||||
-Drepo.port=8080
|
|
||||||
-Ddw.server.applicationConnectors[0].type=http
|
|
||||||
-Didentity-service.auth-server-url=${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
|
|
||||||
-Didentity-service.resource=acs-sync
|
|
||||||
"
|
|
||||||
depends_on:
|
|
||||||
- postgres-acs
|
|
||||||
- activemq
|
|
||||||
|
|
||||||
digital-workspace:
|
|
||||||
image: quay.io/alfresco/alfresco-digital-workspace:${ADW_TAG}
|
|
||||||
environment:
|
|
||||||
BASE_PATH: ./
|
|
||||||
APP_CONFIG_ECM_HOST: "${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}"
|
|
||||||
APP_CONFIG_BPM_HOST: "${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}"
|
|
||||||
APP_BASE_SHARE_URL: "${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/workspace/#/preview/s"
|
|
||||||
APP_CONFIG_PROVIDER: "ALL"
|
|
||||||
APP_CONFIG_PLUGIN_PROCESS_SERVICE: "true"
|
|
||||||
#APP_CONFIG_PLUGIN_PROCESS_AUTOMATION: "true"
|
|
||||||
APP_CONFIG_AUTH_TYPE: OAUTH
|
|
||||||
APP_CONFIG_OAUTH2_HOST: "${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth/realms/alfresco"
|
|
||||||
APP_CONFIG_OAUTH2_CLIENTID: alfresco
|
|
||||||
APP_CONFIG_OAUTH2_IMPLICIT_FLOW: "true"
|
|
||||||
APP_CONFIG_OAUTH2_REDIRECT_LOGIN: "/workspace/"
|
|
||||||
APP_CONFIG_OAUTH2_REDIRECT_LOGOUT: "/workspace/logout"
|
|
||||||
|
|
||||||
activiti-app:
|
|
||||||
image: quay.io/alfresco/alfresco-process-services:${APS_TAG}
|
|
||||||
environment:
|
|
||||||
ACTIVITI_DATASOURCE_USERNAME: alfresco
|
|
||||||
ACTIVITI_DATASOURCE_PASSWORD: alfresco
|
|
||||||
ACTIVITI_DATASOURCE_DRIVER: org.postgresql.Driver
|
|
||||||
ACTIVITI_HIBERNATE_DIALECT: org.hibernate.dialect.PostgreSQLDialect
|
|
||||||
ACTIVITI_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps:5432/activiti?characterEncoding=UTF-8'
|
|
||||||
IDENTITY_SERVICE_ENABLED: "true"
|
|
||||||
IDENTITY_SERVICE_AUTH: http://identity:8080/auth
|
|
||||||
IDENTITY_SERVICE_CONTENT_SSO_REDIRECT_URI: ${PROXY_PROTOCOL}://${PROXY_HOST}:${PROXY_PORT}/activiti-app/app/rest/integration/sso/confirm-auth-request
|
|
||||||
JAVA_OPTS: "-Xms128m -Xmx256m"
|
|
||||||
depends_on:
|
|
||||||
- postgres-aps
|
|
||||||
volumes:
|
|
||||||
- "$ALFRESCO_LICENSE_DIR/aps:/home/alfresco/.activiti/enterprise-license:ro"
|
|
||||||
- apsbin-volume:/var/lib/postgresql/data:rw
|
|
||||||
|
|
||||||
activiti-admin:
|
|
||||||
image: quay.io/alfresco/alfresco-process-services-admin:${APS_TAG}
|
|
||||||
environment:
|
|
||||||
ACTIVITI_ADMIN_DATASOURCE_USERNAME: alfresco
|
|
||||||
ACTIVITI_ADMIN_DATASOURCE_PASSWORD: alfresco
|
|
||||||
ACTIVITI_ADMIN_DATASOURCE_DRIVER: org.postgresql.Driver
|
|
||||||
ACTIVITI_ADMIN_HIBERNATE_DIALECT: org.hibernate.dialect.PostgreSQLDialect
|
|
||||||
ACTIVITI_ADMIN_DATASOURCE_URL: 'jdbc:postgresql://postgres-aps-admin:5432/activiti-admin?characterEncoding=UTF-8'
|
|
||||||
ACTIVITI_ADMIN_REST_APP_HOST: http://activiti-app
|
|
||||||
ACTIVITI_ADMIN_REST_APP_PORT: 8080
|
|
||||||
JAVA_OPTS: "-Xms64m -Xmx128m"
|
|
||||||
depends_on:
|
|
||||||
- postgres-aps-admin
|
|
||||||
- activiti-app
|
|
||||||
|
|
||||||
postgres-aps:
|
|
||||||
image: postgres:${POSTGRES_TAG}
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: activiti
|
|
||||||
POSTGRES_USER: alfresco
|
|
||||||
POSTGRES_PASSWORD: alfresco
|
|
||||||
command: postgres -c max_connections=300 -c log_min_messages=LOG
|
|
||||||
volumes:
|
|
||||||
- apsdb-volume:/var/lib/postgresql/data:rw
|
|
||||||
|
|
||||||
postgres-aps-admin:
|
|
||||||
image: postgres:${POSTGRES_TAG}
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: activiti-admin
|
|
||||||
POSTGRES_USER: alfresco
|
|
||||||
POSTGRES_PASSWORD: alfresco
|
|
||||||
command: postgres -c max_connections=50 -c log_min_messages=LOG
|
|
||||||
volumes:
|
|
||||||
- apsadmindb-volume:/var/lib/postgresql/data:rw
|
|
||||||
|
|
||||||
identity:
|
|
||||||
image: alfresco/alfresco-identity-service:${AIS_TAG}
|
|
||||||
user: jboss
|
|
||||||
environment:
|
|
||||||
KEYCLOAK_USER: admin
|
|
||||||
KEYCLOAK_PASSWORD: admin
|
|
||||||
KEYCLOAK_FRONTEND_URL: ${IDENTITY_SERVICE_PROTOCOL}://${IDENTITY_SERVICE_HOST}:${IDENTITY_SERVICE_PORT}/auth
|
|
||||||
KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
|
|
||||||
KEYCLOAK_STATISTICS: enabled
|
|
||||||
networks:
|
|
||||||
default:
|
|
||||||
aliases:
|
|
||||||
- "${IDENTITY_SERVICE_HOST}"
|
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "curl", "-f", "http://localhost:8080/auth/realms/alfresco"]
|
|
||||||
interval: 10s
|
|
||||||
timeout: 10s
|
|
||||||
# Really long startup times on Windows
|
|
||||||
retries: 18
|
|
||||||
volumes:
|
|
||||||
- ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
|
|
||||||
- keycloak-volume:/opt/jboss/keycloak/standalone/data:rw
|
|
||||||
|
|
||||||
proxy:
|
|
||||||
build: ./nginx-ingress
|
|
||||||
image: local/nginx-ingress:acs-sync-share-adw-aps-aims
|
|
||||||
ports:
|
|
||||||
- 8080:8080
|
|
||||||
depends_on:
|
|
||||||
- platform
|
|
||||||
- sync
|
|
||||||
- share
|
|
||||||
- digital-workspace
|
|
||||||
- activiti-app
|
|
||||||
- activiti-admin
|
|
||||||
- identity
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
shared-file-store-volume:
|
|
||||||
driver_opts:
|
|
||||||
type: tmpfs
|
|
||||||
device: tmpfs
|
|
||||||
acsbin-volume:
|
|
||||||
driver: local
|
|
||||||
acsdb-volume:
|
|
||||||
driver: local
|
|
||||||
activemq-volume:
|
|
||||||
driver: local
|
|
||||||
solrindex-volume:
|
|
||||||
driver: local
|
|
||||||
apsbin-volume:
|
|
||||||
driver: local
|
|
||||||
apsdb-volume:
|
|
||||||
driver: local
|
|
||||||
apsadmindb-volume:
|
|
||||||
driver: local
|
|
||||||
keycloak-volume:
|
|
||||||
driver: local
|
|
||||||
|
@@ -1,80 +0,0 @@
|
|||||||
{
|
|
||||||
"realm": "alfresco",
|
|
||||||
"enabled": true,
|
|
||||||
"sslRequired": "external",
|
|
||||||
"registrationAllowed": false,
|
|
||||||
"roles": {
|
|
||||||
"realm": [ {
|
|
||||||
"name": "user",
|
|
||||||
"description": "User privileges"
|
|
||||||
}, {
|
|
||||||
"name": "admin",
|
|
||||||
"description": "Administrator privileges"
|
|
||||||
} ]
|
|
||||||
},
|
|
||||||
"clients": [
|
|
||||||
{
|
|
||||||
"clientId": "alfresco",
|
|
||||||
"name": "Alfresco Products",
|
|
||||||
"enabled": true,
|
|
||||||
"alwaysDisplayInConsole": false,
|
|
||||||
"redirectUris": [ "*" ],
|
|
||||||
"standardFlowEnabled": true,
|
|
||||||
"implicitFlowEnabled": true,
|
|
||||||
"directAccessGrantsEnabled": false,
|
|
||||||
"publicClient": true,
|
|
||||||
"protocol": "openid-connect",
|
|
||||||
"attributes": {
|
|
||||||
"login_theme": "alfresco"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clientId": "acs-share",
|
|
||||||
"name": "ACS Share",
|
|
||||||
"enabled": true,
|
|
||||||
"alwaysDisplayInConsole": false,
|
|
||||||
"redirectUris": [ "*" ],
|
|
||||||
"standardFlowEnabled": true,
|
|
||||||
"implicitFlowEnabled": false,
|
|
||||||
"directAccessGrantsEnabled": false,
|
|
||||||
"publicClient": true,
|
|
||||||
"protocol": "openid-connect",
|
|
||||||
"attributes": {
|
|
||||||
"login_theme": "alfresco"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"clientId": "acs-sync",
|
|
||||||
"name": "Alfresco Sync Service Clients",
|
|
||||||
"enabled": true,
|
|
||||||
"alwaysDisplayInConsole": false,
|
|
||||||
"redirectUris": [
|
|
||||||
"http://127.0.0.1*",
|
|
||||||
"http://localhost*"
|
|
||||||
],
|
|
||||||
"standardFlowEnabled": true,
|
|
||||||
"implicitFlowEnabled": false,
|
|
||||||
"directAccessGrantsEnabled": false,
|
|
||||||
"publicClient": true,
|
|
||||||
"protocol": "openid-connect",
|
|
||||||
"attributes": {
|
|
||||||
"login_theme": "alfresco"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"requiredCredentials": [ "password" ],
|
|
||||||
"users": [
|
|
||||||
{
|
|
||||||
"username": "admin",
|
|
||||||
"email": "admin@app.activiti.com",
|
|
||||||
"enabled": true,
|
|
||||||
"credentials" : [
|
|
||||||
{
|
|
||||||
"type" : "password",
|
|
||||||
"value" : "admin"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"realmRoles": [ "user", "admin" ]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@@ -1,8 +0,0 @@
|
|||||||
FROM nginx:stable-alpine
|
|
||||||
|
|
||||||
COPY nginx.conf /etc/nginx/nginx.conf
|
|
||||||
|
|
||||||
COPY entrypoint.sh /
|
|
||||||
RUN chmod +x /entrypoint.sh
|
|
||||||
|
|
||||||
ENTRYPOINT [ "/entrypoint.sh" ]
|
|
@@ -1,35 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [[ $ACS_PLATFORM_URL ]]; then
|
|
||||||
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ACS_SYNC_URL ]]; then
|
|
||||||
sed -i s%http:\/\/sync:9090%"$ACS_SYNC_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ACS_SHARE_URL ]]; then
|
|
||||||
sed -i s%http:\/\/share:8080%"$ACS_SHARE_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ADW_URL ]]; then
|
|
||||||
sed -i s%http:\/\/digital-workspace:8080%"$ADW_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $APS_APP_URL ]]; then
|
|
||||||
sed -i s%http:\/\/activiti-app:8080%"$APS_APP_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $APS_ADMIN_URL ]]; then
|
|
||||||
sed -i s%http:\/\/activiti-admin:8080%"$APS_ADMIN_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $AIMS_URL ]]; then
|
|
||||||
sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $ACCESS_LOG ]]; then
|
|
||||||
sed -i s%\#ENV_ACCESS_LOG%"access_log $ACCESS_LOG;"%g /etc/nginx/nginx.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
nginx -g "daemon off;"
|
|
@@ -1,91 +0,0 @@
|
|||||||
worker_processes 1;
|
|
||||||
|
|
||||||
events {
|
|
||||||
worker_connections 1024;
|
|
||||||
}
|
|
||||||
|
|
||||||
http {
|
|
||||||
server {
|
|
||||||
listen *:8080;
|
|
||||||
|
|
||||||
client_max_body_size 0;
|
|
||||||
|
|
||||||
set $allowOriginSite *;
|
|
||||||
proxy_pass_request_headers on;
|
|
||||||
proxy_pass_header Set-Cookie;
|
|
||||||
|
|
||||||
# External settings, do not remove
|
|
||||||
#ENV_ACCESS_LOG
|
|
||||||
|
|
||||||
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
|
|
||||||
proxy_redirect off;
|
|
||||||
# proxy_buffering off;
|
|
||||||
proxy_buffer_size 64k;
|
|
||||||
proxy_buffers 4 256k;
|
|
||||||
proxy_busy_buffers_size 256k;
|
|
||||||
proxy_set_header Host $http_host;
|
|
||||||
proxy_set_header X-Real-IP $remote_addr;
|
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
|
||||||
proxy_pass_header Set-Cookie;
|
|
||||||
|
|
||||||
# Protect access to SOLR APIs
|
|
||||||
location ~ ^(/.*/service/api/solr/.*)$ {return 403;}
|
|
||||||
location ~ ^(/.*/s/api/solr/.*)$ {return 403;}
|
|
||||||
location ~ ^(/.*/wcservice/api/solr/.*)$ {return 403;}
|
|
||||||
location ~ ^(/.*/wcs/api/solr/.*)$ {return 403;}
|
|
||||||
|
|
||||||
location ~ ^(/.*/proxy/alfresco/api/solr/.*)$ {return 403 ;}
|
|
||||||
location ~ ^(/.*/-default-/proxy/alfresco/api/.*)$ {return 403;}
|
|
||||||
|
|
||||||
# Protect access to Prometheus endpoint
|
|
||||||
location ~ ^(/.*/s/prometheus)$ {return 403;}
|
|
||||||
|
|
||||||
location / {
|
|
||||||
proxy_pass http://platform:8080;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /alfresco/ {
|
|
||||||
proxy_pass http://platform:8080;
|
|
||||||
|
|
||||||
# If using external proxy / load balancer (for initial redirect if no trailing slash)
|
|
||||||
absolute_redirect off;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /sync/ {
|
|
||||||
proxy_pass http://sync:9090/alfresco/;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /activiti-app/ {
|
|
||||||
proxy_pass http://activiti-app:8080;
|
|
||||||
|
|
||||||
# If using external proxy / load balancer (for initial redirect if no trailing slash)
|
|
||||||
absolute_redirect off;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /activiti-admin/ {
|
|
||||||
proxy_pass http://activiti-admin:8080;
|
|
||||||
|
|
||||||
# If using external proxy / load balancer (for initial redirect if no trailing slash)
|
|
||||||
absolute_redirect off;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /share/ {
|
|
||||||
proxy_pass http://share:8080;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /workspace/ {
|
|
||||||
proxy_pass http://digital-workspace:8080/;
|
|
||||||
|
|
||||||
# If using external proxy / load balancer (for initial redirect if no trailing slash)
|
|
||||||
absolute_redirect off;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /auth/ {
|
|
||||||
proxy_pass http://identity:8080;
|
|
||||||
|
|
||||||
# If using external proxy / load balancer (for initial redirect if no trailing slash)
|
|
||||||
absolute_redirect off;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
8
scripts/download-maven-alfresco-private.bat
Normal file
8
scripts/download-maven-alfresco-private.bat
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
REM Usage: .\download-maven-alfresco-private.bat org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
@echo off
|
||||||
|
set THISDIR_REL=%~dp0
|
||||||
|
set THISDIR=%THISDIR_REL:~0,-1%
|
||||||
|
|
||||||
|
set MAVEN_BASEURL=https://artifacts.alfresco.com/nexus/content/groups/private
|
||||||
|
|
||||||
|
call "%THISDIR%\download-maven.bat" %MAVEN_BASEURL% %*
|
6
scripts/download-maven-alfresco-private.ps1
Normal file
6
scripts/download-maven-alfresco-private.ps1
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# Usage: .\download-maven-alfresco-private.ps1 org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
$THISDIR=$PSScriptRoot
|
||||||
|
|
||||||
|
$MAVEN_BASEURL="https://artifacts.alfresco.com/nexus/content/groups/private"
|
||||||
|
|
||||||
|
Invoke-Expression "& '${THISDIR}\download-maven.ps1' '${MAVEN_BASEURL}' $args"
|
7
scripts/download-maven-alfresco-private.sh
Executable file
7
scripts/download-maven-alfresco-private.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download-maven-alfresco-private.sh org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
THISDIR=`dirname "$(readlink -f "$0")"`
|
||||||
|
|
||||||
|
MAVEN_BASEDIR="https://artifacts.alfresco.com/nexus/content/groups/private"
|
||||||
|
|
||||||
|
${THISDIR}/download-maven.sh "${MAVEN_BASEDIR}" $*
|
8
scripts/download-maven-alfresco-public.bat
Normal file
8
scripts/download-maven-alfresco-public.bat
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
REM Usage: .\download-maven-alfresco-public.bat org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
@echo off
|
||||||
|
set THISDIR_REL=%~dp0
|
||||||
|
set THISDIR=%THISDIR_REL:~0,-1%
|
||||||
|
|
||||||
|
set MAVEN_BASEURL=https://artifacts.alfresco.com/nexus/content/groups/public
|
||||||
|
|
||||||
|
call "%THISDIR%\download-maven.bat" %MAVEN_BASEURL% %*
|
6
scripts/download-maven-alfresco-public.ps1
Normal file
6
scripts/download-maven-alfresco-public.ps1
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# Usage: .\download-maven-alfresco-public.ps1 org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
$THISDIR=$PSScriptRoot
|
||||||
|
|
||||||
|
$MAVEN_BASEURL="https://artifacts.alfresco.com/nexus/content/groups/public"
|
||||||
|
|
||||||
|
Invoke-Expression "& '${THISDIR}\download-maven.ps1' '${MAVEN_BASEURL}' $args"
|
7
scripts/download-maven-alfresco-public.sh
Executable file
7
scripts/download-maven-alfresco-public.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download-maven-alfresco-public.sh org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
THISDIR=`dirname "$(readlink -f "$0")"`
|
||||||
|
|
||||||
|
MAVEN_BASEDIR="https://artifacts.alfresco.com/nexus/content/groups/public"
|
||||||
|
|
||||||
|
${THISDIR}/download-maven.sh "${MAVEN_BASEDIR}" $*
|
7
scripts/download-maven-inteligr8-private.sh
Executable file
7
scripts/download-maven-inteligr8-private.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download-maven-inteligr8-private.sh org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
THISDIR=`dirname "$(readlink -f "$0")"`
|
||||||
|
|
||||||
|
MAVEN_BASEURL="http://repos.yateslong.us/nexus/repository/inteligr8"
|
||||||
|
|
||||||
|
${THISDIR}/download-maven.sh "${MAVEN_BASEURL}" $*
|
7
scripts/download-maven-inteligr8-public.sh
Executable file
7
scripts/download-maven-inteligr8-public.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download-maven-inteligr8-public.sh org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
THISDIR=`dirname "$(readlink -f "$0")"`
|
||||||
|
|
||||||
|
MAVEN_BASEURL="http://repos.yateslong.us/nexus/repositories/inteligr8-public"
|
||||||
|
|
||||||
|
${THISDIR}/download-maven.sh "${MAVEN_BASEURL}" $*
|
18
scripts/download-maven.bat
Normal file
18
scripts/download-maven.bat
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
REM Usage: .\download-maven.bat https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
REM Usage: .\download-maven.bat https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
@echo off
|
||||||
|
set THISDIR_REL=%~dp0
|
||||||
|
set THISDIR=%THISDIR_REL:~0,-1%
|
||||||
|
|
||||||
|
set MAVEN_BASEURL=%1
|
||||||
|
set MAVEN_GROUP_PATH=%2
|
||||||
|
set MAVEN_ARTIFACT_ID=%3
|
||||||
|
set MAVEN_ARTIFACT_VERSION=%4
|
||||||
|
set MAVEN_PACKAGING=%5
|
||||||
|
set HTTP_USERNAME=%6
|
||||||
|
set HTTP_PASSWORD=%7
|
||||||
|
|
||||||
|
set MAVEN_ARTIFACT_FILENAME=%MAVEN_ARTIFACT_ID%-%MAVEN_ARTIFACT_VERSION%.%MAVEN_PACKAGING%
|
||||||
|
set MAVEN_URL=%MAVEN_BASEURL%/%MAVEN_GROUP_PATH%/%MAVEN_ARTIFACT_ID%/%MAVEN_ARTIFACT_VERSION%/%MAVEN_ARTIFACT_FILENAME%
|
||||||
|
|
||||||
|
call "%THISDIR%\download-url.bat" %MAVEN_URL% %MAVEN_ARTIFACT_FILENAME% %HTTP_USERNAME% %HTTP_PASSWORD%
|
16
scripts/download-maven.ps1
Normal file
16
scripts/download-maven.ps1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
# Usage: .\download-maven.ps1 https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
# Usage: .\download-maven.ps1 https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
$THISDIR=$PSScriptRoot
|
||||||
|
|
||||||
|
$MAVEN_BASEURL=$args[0]
|
||||||
|
$MAVEN_GROUP_PATH=$args[1]
|
||||||
|
$MAVEN_ARTIFACT_ID=$args[2]
|
||||||
|
$MAVEN_ARTIFACT_VERSION=$args[3]
|
||||||
|
$MAVEN_PACKAGING=$args[4]
|
||||||
|
$HTTP_USERNAME=$args[5]
|
||||||
|
$HTTP_PASSWORD=$args[6]
|
||||||
|
|
||||||
|
$MAVEN_ARTIFACT_FILENAME="${MAVEN_ARTIFACT_ID}-${MAVEN_ARTIFACT_VERSION}.${MAVEN_PACKAGING}"
|
||||||
|
$MAVEN_URL="${MAVEN_BASEURL}/${MAVEN_GROUP_PATH}/${MAVEN_ARTIFACT_ID}/${MAVEN_ARTIFACT_VERSION}/${MAVEN_ARTIFACT_FILENAME}"
|
||||||
|
|
||||||
|
Invoke-Expression "& '${THISDIR}\download-url.ps1' '${MAVEN_URL}' '${MAVEN_ARTIFACT_FILENAME}' '${HTTP_USERNAME}' '${HTTP_PASSWORD}'"
|
18
scripts/download-maven.sh
Executable file
18
scripts/download-maven.sh
Executable file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download-maven.sh https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar
|
||||||
|
# Usage: ./download-maven.sh https://repo1.maven.org/maven2 org/maven/group/path maven-artifact-id 1.2.3 jar a_username a_password
|
||||||
|
THISDIR=`dirname "$(readlink -f "$0")"`
|
||||||
|
|
||||||
|
MAVEN_BASEURL=$1
|
||||||
|
MAVEN_GROUP_PATH=$2
|
||||||
|
MAVEN_ARTIFACT_ID=$3
|
||||||
|
MAVEN_ARTIFACT_VERSION=$4
|
||||||
|
MAVEN_PACKAGING=$5
|
||||||
|
HTTP_USERNAME=$6
|
||||||
|
HTTP_PASSWORD=$7
|
||||||
|
|
||||||
|
MAVEN_ARTIFACT_FILENAME=${MAVEN_ARTIFACT_ID}-${MAVEN_ARTIFACT_VERSION}.${MAVEN_PACKAGING}
|
||||||
|
MAVEN_URL=${MAVEN_BASEURL}/${MAVEN_GROUP_PATH}/${MAVEN_ARTIFACT_ID}/${MAVEN_ARTIFACT_VERSION}/${MAVEN_ARTIFACT_FILENAME}
|
||||||
|
echo $MAVEN_URL
|
||||||
|
|
||||||
|
${THISDIR}/download-url.sh "${MAVEN_URL}" "${MAVEN_ARTIFACT_FILENAME}" "${HTTP_USERNAME}" "${HTTP_PASSWORD}"
|
13
scripts/download-url.bat
Normal file
13
scripts/download-url.bat
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
REM Usage: .\download.bat https://www.a.url/to/download filename_for_downloaded.file
|
||||||
|
REM Usage: .\download.bat https://www.a.url/to/download filename_for_downloaded.file a_username a_password
|
||||||
|
@echo off
|
||||||
|
set URL=%1
|
||||||
|
set FILENAME=%2
|
||||||
|
|
||||||
|
if NOT "%~3" == "" (
|
||||||
|
set USERNAME=%3
|
||||||
|
set PASSWORD=%4
|
||||||
|
curl -L -o %FILENAME% -u %USERNAME%:%PASSWORD% %URL%
|
||||||
|
) else (
|
||||||
|
curl -L -o %FILENAME% %URL%
|
||||||
|
)
|
16
scripts/download-url.ps1
Normal file
16
scripts/download-url.ps1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
# Usage: .\download.ps1 https://www.a.url/to/download filename_for_downloaded.file
|
||||||
|
# Usage: .\download.ps1 https://www.a.url/to/download filename_for_downloaded.file a_username a_password
|
||||||
|
$URL=$args[0]
|
||||||
|
$FILENAME=$args[1]
|
||||||
|
|
||||||
|
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
|
||||||
|
if ($args.count -gt 2) {
|
||||||
|
$USERNAME=$args[2]
|
||||||
|
$PASSWORD=$args[3]
|
||||||
|
|
||||||
|
$AUTH_PAIR=[System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes("$($USERNAME):$($PASSWORD)"))
|
||||||
|
$AUTH_HEADERS=@{Authorization="Basic $AUTH_PAIR"}
|
||||||
|
Invoke-WebRequest -Uri "${URL}" -OutFile "${FILENAME}" -Headers ${AUTH_HEADERS}
|
||||||
|
} else {
|
||||||
|
Invoke-WebRequest -Uri "${URL}" -OutFile "${FILENAME}"
|
||||||
|
}
|
13
scripts/download-url.sh
Executable file
13
scripts/download-url.sh
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./download.sh https://www.a.url/to/download filename_for_downloaded.file
|
||||||
|
# Usage: ./download.sh https://www.a.url/to/download filename_for_downloaded.file a_username a_password
|
||||||
|
URL=$1
|
||||||
|
FILENAME=$2
|
||||||
|
|
||||||
|
if [ "$#" -gt 2 ]; then
|
||||||
|
USERNAME=$3
|
||||||
|
PASSWORD=$4
|
||||||
|
curl -L -o "${FILENAME}" -u "${USERNAME}:${PASSWORD}" ${URL}
|
||||||
|
else
|
||||||
|
curl -L -o "${FILENAME}" ${URL}
|
||||||
|
fi
|
11
scripts/unpack.bat
Normal file
11
scripts/unpack.bat
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
REM Usage: .\unpack.bat filename.zip
|
||||||
|
REM Usage: .\unpack.bat filename.zip c:\
|
||||||
|
@echo off
|
||||||
|
set FILENAME=%1
|
||||||
|
|
||||||
|
if NOT "%~2" == "" (
|
||||||
|
set DESTPATH=%2
|
||||||
|
powershell -command "Expand-Archive -Force -Path '%FILENAME%' -DestinationPath '%DESTPATH%'"
|
||||||
|
) else (
|
||||||
|
powershell -command "Expand-Archive -Force -Path '%FILENAME%' -DestinationPath '%~dp0'"
|
||||||
|
)
|
10
scripts/unpack.ps1
Normal file
10
scripts/unpack.ps1
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# Usage: .\unpack.ps1 filename.zip
|
||||||
|
# Usage: .\unpack.ps1 filename.zip c:\
|
||||||
|
$FILENAME=$args[0]
|
||||||
|
|
||||||
|
if ($args.count -gt 1) {
|
||||||
|
$DESTPATH=$args[1]
|
||||||
|
Expand-Archive -Force -Path "${FILENAME}" -DestinationPath "${DESTPATH}"
|
||||||
|
} else {
|
||||||
|
Expand-Archive -Force -Path "${FILENAME}"
|
||||||
|
}
|
11
scripts/unpack.sh
Executable file
11
scripts/unpack.sh
Executable file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Usage: ./unpack.sh filename.zip
|
||||||
|
# Usage: ./unpack.sh filename.zip /home/user
|
||||||
|
FILENAME=$1
|
||||||
|
|
||||||
|
if [ "$#" -gt 1 ]; then
|
||||||
|
DESTPATH=$2
|
||||||
|
unzip -d ${DESTPATH} ${FILENAME}
|
||||||
|
else
|
||||||
|
unzip ${FILENAME}
|
||||||
|
fi
|
175
server.xml
175
server.xml
@@ -1,175 +0,0 @@
|
|||||||
<?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" logArgs="false" />
|
|
||||||
<!-- 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"
|
|
||||||
Server=" "
|
|
||||||
connectionTimeout="20000"
|
|
||||||
redirectPort="8443"
|
|
||||||
proxyName="alfresco.inteligr8.com" proxyPort="443" />
|
|
||||||
<!-- A "Connector" using the shared thread pool-->
|
|
||||||
<!--
|
|
||||||
<Connector executor="tomcatThreadPool"
|
|
||||||
port="8080" protocol="HTTP/1.1"
|
|
||||||
connectionTimeout="20000"
|
|
||||||
redirectPort="8443"
|
|
||||||
proxyHost="alfresco.inteligr8.com" proxyPort="443" />
|
|
||||||
-->
|
|
||||||
<!-- 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/localhost-rsa-key.pem"
|
|
||||||
certificateFile="conf/localhost-rsa-cert.pem"
|
|
||||||
certificateChainFile="conf/localhost-rsa-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 "%r" %s %b" />
|
|
||||||
|
|
||||||
<Valve className="org.apache.catalina.valves.RemoteIpValve" />
|
|
||||||
|
|
||||||
</Host>
|
|
||||||
</Engine>
|
|
||||||
</Service>
|
|
||||||
</Server>
|
|
Reference in New Issue
Block a user