Compare commits
53 Commits
propagate/
...
aps-persis
Author | SHA1 | Date | |
---|---|---|---|
afa845b893 | |||
76f18e1a60 | |||
6aa3731165 | |||
82864c1955 | |||
bf4879e466 | |||
3a6d3b1c1e | |||
944397b02c | |||
8901d10f82 | |||
e0e190d987 | |||
fc8a854920 | |||
7e526e0e1e | |||
241a3e47ea | |||
c2a9679ede | |||
17738d0a96 | |||
64708232c4 | |||
4e85d8118c | |||
1279c5aeba | |||
3c1796b0b4 | |||
dd967a17f2 | |||
27a818fd22 | |||
9e1a819e8b | |||
10e7f81163 | |||
604ed69bb3 | |||
dee72646e6 | |||
2ed89fa708 | |||
bcdd5e0525 | |||
7590f2d390 | |||
2d91d8bc08 | |||
|
5faa546a0f | ||
|
4f191bcbea | ||
|
ba6a0f70ad | ||
|
8b7ec4654e | ||
6e0c055222 | |||
|
7d0eadd920 | ||
912249c388 | |||
|
83c123de08 | ||
|
9dd046ad51 | ||
20b41bbcb1 | |||
6edb220093 | |||
8ccf85d170 | |||
89348916a5 | |||
a2619fac7b | |||
70eb1fd7fb | |||
d7ed2df85e | |||
3a47c43a88 | |||
16aa444b19 | |||
7caee29b23 | |||
deb6bf058c | |||
8a0ccc61a5 | |||
695e3b3dc0 | |||
2b7755222b | |||
237a8abd62 | |||
f28c16c4fe |
7
.env
7
.env
@@ -1,4 +1,9 @@
|
||||
ALFRESCO_DIR=~/alfresco
|
||||
ALFRESCO_LICENSE_DIR=~/alfresco/license
|
||||
|
||||
PROXY_PROTOCOL=http
|
||||
PROXY_HOST=localhost
|
||||
PROXY_PORT=8080
|
||||
IDENTITY_SERVICE_BASEURL=http://auth.example.org:8080
|
||||
|
||||
APS_TAG=2.4.1
|
||||
POSTGRES_TAG=13
|
||||
|
@@ -3,3 +3,10 @@
|
||||
|
||||
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.
|
||||
|
||||
### 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,30 +1,72 @@
|
||||
# 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
|
||||
#
|
||||
# Using version 2 as 3 does not support resource constraint options (cpu_*, mem_* limits) for non swarm mode in Compose
|
||||
version: "2"
|
||||
version: "3"
|
||||
|
||||
services:
|
||||
|
||||
identity:
|
||||
image: alfresco/alfresco-identity-service:1.3
|
||||
user: jboss
|
||||
activiti-app:
|
||||
image: quay.io/alfresco/alfresco-process-services:${APS_TAG}
|
||||
environment:
|
||||
KEYCLOAK_USER: admin
|
||||
KEYCLOAK_PASSWORD: admin
|
||||
KEYCLOAK_HOSTNAME: auth.example.org
|
||||
KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
|
||||
KEYCLOAK_STATISTICS: enabled
|
||||
networks:
|
||||
default:
|
||||
aliases:
|
||||
- "auth.example.org"
|
||||
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'
|
||||
JAVA_OPTS: "-Xms128m -Xmx256m"
|
||||
depends_on:
|
||||
- postgres-aps
|
||||
volumes:
|
||||
- ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
|
||||
- "$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
|
||||
|
||||
proxy:
|
||||
build: ./nginx-ingress
|
||||
image: local/nginx-ingress:aims
|
||||
image: local/nginx-ingress:aps
|
||||
ports:
|
||||
- 8080:8080
|
||||
depends_on:
|
||||
- identity
|
||||
- activiti-app
|
||||
- activiti-admin
|
||||
|
||||
volumes:
|
||||
apsbin-volume:
|
||||
driver: local
|
||||
apsdb-volume:
|
||||
driver: local
|
||||
apsadmindb-volume:
|
||||
driver: local
|
||||
|
@@ -1,47 +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"
|
||||
}
|
||||
}
|
||||
],
|
||||
"requiredCredentials": [ "password" ],
|
||||
"users": [
|
||||
{
|
||||
"username": "admin",
|
||||
"email": "admin@app.activiti.com",
|
||||
"enabled": true,
|
||||
"credentials" : [
|
||||
{
|
||||
"type" : "password",
|
||||
"value" : "admin"
|
||||
}
|
||||
],
|
||||
"realmRoles": [ "user", "admin" ]
|
||||
}
|
||||
]
|
||||
}
|
@@ -1,7 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [[ $AIMS_URL ]]; then
|
||||
sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
|
||||
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 [[ $ACCESS_LOG ]]; then
|
||||
|
@@ -19,22 +19,38 @@ http {
|
||||
|
||||
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_buffering off;
|
||||
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 / {
|
||||
return 301 $scheme://$http_host/auth;
|
||||
return 301 $scheme://$http_host/activiti-app;
|
||||
}
|
||||
|
||||
location /auth/ {
|
||||
proxy_pass http://identity:8080;
|
||||
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;
|
||||
|
Reference in New Issue
Block a user