Compare commits

..

5 Commits

Author SHA1 Message Date
brian
f23cda3fd1 Merge branch 'proxy' into aims 2021-04-02 09:12:59 -04:00
b4be2e251c changed admin username ot alfresco defaults 2021-01-14 11:40:42 -05:00
44b6f26f4f updates after some acs-enterprise testing 2021-01-14 11:17:01 -05:00
b124cd027c added default admin.1 user 2021-01-14 09:39:34 -05:00
919d842d61 added identity service 2021-01-13 17:01:06 -05:00
5 changed files with 75 additions and 70 deletions

8
.env
View File

@@ -1,10 +1,4 @@
ALFRESCO_DIR=~/alfresco
ALFRESCO_LICENSE_DIR=~/alfresco/license
PROXY_PROTOCOL=http PROXY_PROTOCOL=http
PROXY_HOST=localhost PROXY_HOST=localhost
PROXY_PORT=8080 PROXY_PORT=8080
IDENTITY_SERVICE_BASEURL=http://auth.example.org:8080
ACS_TAG=7.4.1.1
AAMQ_TAG=latest
POSTGRES_TAG=13

View File

@@ -1,57 +1,30 @@
# Originally sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml # Sourced from https://github.com/Alfresco/acs-deployment/blob/4.0.3/docker-compose/docker-compose.yml
# #
version: "3" # Using version 2 as 3 does not support resource constraint options (cpu_*, mem_* limits) for non swarm mode in Compose
version: "2"
services: services:
platform: identity:
image: alfresco/alfresco-content-repository-community:${ACS_TAG} image: alfresco/alfresco-identity-service:1.3
user: jboss
environment: environment:
JAVA_TOOL_OPTIONS: " KEYCLOAK_USER: admin
-Dencryption.keystore.type=JCEKS KEYCLOAK_PASSWORD: admin
-Dencryption.cipherAlgorithm=DESede/CBC/PKCS5Padding KEYCLOAK_HOSTNAME: auth.example.org
-Dencryption.keyAlgorithm=DESede KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
-Dencryption.keystore.location=/usr/local/tomcat/shared/classes/alfresco/extension/keystore/keystore KEYCLOAK_STATISTICS: enabled
-Dmetadata-keystore.password=mp6yc0UD9e networks:
-Dmetadata-keystore.aliases=metadata default:
-Dmetadata-keystore.metadata.password=oKIWzVdEdA aliases:
-Dmetadata-keystore.metadata.algorithm=DESede" - "auth.example.org"
JAVA_OPTS: "
-Ddb.driver=org.postgresql.Driver
-Ddb.url=jdbc:postgresql://postgres-acs:5432/alfresco
-Dalfresco.host=${PROXY_HOST}
-Dalfresco.port=${PROXY_PORT}
-Dalfresco.protocol=${PROXY_PROTOCOL}
-Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\"
"
depends_on:
- postgres-acs
- activemq
volumes: volumes:
- acsbin-volume:/usr/local/tomcat/alf_data:rw - ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
postgres-acs:
image: postgres:${POSTGRES_TAG}
volumes:
- acsdb-volume:/var/lib/postgresql/data:rw
activemq:
image: alfresco/alfresco-activemq:${AAMQ_TAG}
volumes:
- activemq-volume:/opt/activemq/data:rw
proxy: proxy:
build: ./nginx-ingress build: ./nginx-ingress
image: local/nginx-ingress:acs image: local/nginx-ingress:aims
ports: ports:
- 8080:8080 - 8080:8080
depends_on: depends_on:
- platform - identity
volumes:
acsbin-volume:
driver: local
acsdb-volume:
driver: local
activemq-volume:
driver: local

View File

@@ -0,0 +1,47 @@
{
"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" ]
}
]
}

View File

@@ -1,7 +1,7 @@
#!/bin/sh #!/bin/sh
if [[ $ACS_PLATFORM_URL ]]; then if [[ $AIMS_URL ]]; then
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_URL"%g /etc/nginx/nginx.conf sed -i s%http:\/\/identity:8080%"$AIMS_URL"%g /etc/nginx/nginx.conf
fi fi
if [[ $ACCESS_LOG ]]; then if [[ $ACCESS_LOG ]]; then

View File

@@ -19,31 +19,22 @@ http {
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off; proxy_redirect off;
proxy_buffering 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 Host $http_host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass_header Set-Cookie; 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 / { location / {
proxy_pass http://platform:8080; return 301 $scheme://$http_host/auth;
} }
location /alfresco/ { location /auth/ {
proxy_pass http://platform:8080; proxy_pass http://identity:8080;
# If using external proxy / load balancer (for initial redirect if no trailing slash) # If using external proxy / load balancer (for initial redirect if no trailing slash)
absolute_redirect off; absolute_redirect off;