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
10 changed files with 73 additions and 77 deletions

4
.env
View File

@@ -1,6 +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

View File

@@ -1,16 +0,0 @@
FROM alfresco/alfresco-content-repository:latest
ARG USERNAME=alfresco
ARG TOMCAT_DIR=/usr/local/tomcat
USER root
COPY catalina.policy /tmp/catalina.policy.ext
COPY tomcat-platform-context.xml ${TOMCAT_DIR}/conf/Catalina/localhost/alfresco.xml
COPY *.amp ${TOMCAT_DIR}/amps/
RUN java -jar ${TOMCAT_DIR}/alfresco-mmt/alfresco-mmt*.jar install ${TOMCAT_DIR}/amps ${TOMCAT_DIR}/webapps/alfresco -nobackup -directory && \
mkdir -p ${TOMCAT_DIR}/modules && \
cat /tmp/catalina.policy.ext >> ${TOMCAT_DIR}/conf/catalina.policy
USER ${USERNAME}

View File

@@ -1,3 +0,0 @@
## Usage
Download all AMP files needed into this directory. All of them will be copied into a new Docker image and installed into the Alfresco Platform web application.

View File

@@ -1,4 +0,0 @@
grant codeBase "file:${catalina.base}/modules/-" {
permission java.security.AllPermission;
};

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resources>
<PreResources base="${catalina.base}/modules" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/lib" readOnly="true" />
</Resources>
</Context>

View File

@@ -1,3 +0,0 @@
## Usage
Download all JAR module files needed into this directory. All of them will be dynamically loaded into the Docker container and loaded into the Alfresco Platform web application.

View File

@@ -4,34 +4,27 @@
version: "2" version: "2"
services: services:
platform:
build: ./alfresco-content-repository/docker identity:
image: local/alfresco-content-repository:latest image: alfresco/alfresco-identity-service:1.3
user: jboss
environment: environment:
JAVA_OPTS: " KEYCLOAK_USER: admin
-Ddb.driver=org.postgresql.Driver KEYCLOAK_PASSWORD: admin
-Ddb.url=jdbc:postgresql://postgres-acs:5432/alfresco KEYCLOAK_HOSTNAME: auth.example.org
-Dalfresco.host=${PROXY_HOST} KEYCLOAK_IMPORT: /tmp/keycloak-alfresco-realm.json
-Dalfresco.port=${PROXY_PORT} KEYCLOAK_STATISTICS: enabled
-Dalfresco.protocol=${PROXY_PROTOCOL} networks:
-Dmessaging.broker.url=\"failover:(nio://activemq:61616)?timeout=3000&jms.useCompression=true\" default:
" aliases:
depends_on: - "auth.example.org"
- postgres-acs
- activemq
volumes: volumes:
- "./alfresco-content-repository/modules:/usr/local/tomcat/modules:ro" - ./keycloak-alfresco-realm.json:/tmp/keycloak-alfresco-realm.json:ro
postgres-acs:
image: postgres:latest
activemq:
image: alfresco/alfresco-activemq:latest
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

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;