Compare commits
72 Commits
ldap-serve
...
propagate/
Author | SHA1 | Date | |
---|---|---|---|
|
99d39fa7f7 | ||
|
1778fd04a4 | ||
|
d616b9ef3a | ||
|
a72d43a6af | ||
6bce626075 | |||
3d6aa1d4bc | |||
2878298644 | |||
11bb8c62ed | |||
962817ba63 | |||
d70efc6943 | |||
83db2b08dc | |||
a3cb815dd1 | |||
ebd6c503bd | |||
ac18d6d637 | |||
fc9c26eac5 | |||
2715b3afea | |||
55b70f1a36 | |||
1d5624496d | |||
3a6b5c4850 | |||
817b062dfd | |||
c0c6dcd1ce | |||
253b7fd3f2 | |||
9f75b4439d | |||
3ac57ce7d1 | |||
3cb24f7587 | |||
6579a5a0c9 | |||
d6b7a879b1 | |||
1ead7a8d16 | |||
63aa212ccb | |||
5e618569bc | |||
6d396a640f | |||
520e211c11 | |||
1635445cba | |||
6ec4a797ca | |||
0ed77985f0 | |||
9720bd7fa6 | |||
4e8453becd | |||
1d0aa0c91e | |||
7a005d16d7 | |||
60b5a8989b | |||
b762ba0ce1 | |||
c22af67a06 | |||
a7cacf8edc | |||
43d5686407 | |||
e29e80b650 | |||
fbf7ca3678 | |||
46bbeeef30 | |||
6b0c103d75 | |||
faee3aaa48 | |||
beb87dd97a | |||
a42af25649 | |||
db6a1e148c | |||
ab396f7656 | |||
b65d3d301f | |||
6332985ebd | |||
010149e6b6 | |||
f1df9c3217 | |||
69974eaeea | |||
82d6fd5c8a | |||
90e935a49e | |||
6e32209824 | |||
63d1ee7ef9 | |||
a081d5b5c8 | |||
79a1644530 | |||
5cfee3d18f | |||
8a5004ed74 | |||
d0a62bfd24 | |||
7cedfa4fa2 | |||
6c665fab04 | |||
723f3ec954 | |||
dcb88c42ea | |||
0f36dd1943 |
6
.env
6
.env
@@ -0,0 +1,6 @@
|
|||||||
|
ALFRESCO_DIR=~/alfresco
|
||||||
|
ALFRESCO_LICENSE_DIR=~/alfresco/license
|
||||||
|
|
||||||
|
PROXY_PROTOCOL=http
|
||||||
|
PROXY_HOST=localhost
|
||||||
|
PROXY_PORT=8080
|
||||||
|
@@ -1,16 +1,70 @@
|
|||||||
# 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:
|
||||||
directory:
|
image: alfresco/alfresco-content-repository-community:6.2.0-ga
|
||||||
image: osixia/openldap:1.4.0
|
mem_limit: 1700m
|
||||||
environment:
|
environment:
|
||||||
LDAP_ORGANISATION: "Example Organization"
|
JAVA_OPTS: "
|
||||||
LDAP_DOMAIN: example.org
|
-Ddb.driver=org.postgresql.Driver
|
||||||
LDAP_ADMIN_PASSWORD: admin
|
-Ddb.username=alfresco
|
||||||
command: "--copy-service --loglevel=debug"
|
-Ddb.password=alfresco
|
||||||
volumes:
|
-Ddb.url=jdbc:postgresql://postgres-acs:5432/alfresco
|
||||||
- ./openldap-example.ldif:/container/service/slapd/assets/config/bootstrap/ldif/50-bootstrap.ldif:ro
|
-Dindex.subsystem.name=solr6
|
||||||
|
-Dsolr.host=search
|
||||||
|
-Dsolr.port=8983
|
||||||
|
-Dsolr.secureComms=none
|
||||||
|
-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
|
||||||
|
-XX:MinRAMPercentage=50 -XX:MaxRAMPercentage=80
|
||||||
|
|
||||||
|
-Dtransform.service.enabled=false
|
||||||
|
-Dlocal.transform.service.enabled=false
|
||||||
|
|
||||||
|
-Dsystem.content.eagerOrphanCleanup=true
|
||||||
|
-Dsystem.content.orphanProtectDays=0
|
||||||
|
-Djodconverter.enabled=false
|
||||||
|
"
|
||||||
|
depends_on:
|
||||||
|
- postgres-acs
|
||||||
|
- activemq
|
||||||
|
|
||||||
|
postgres-acs:
|
||||||
|
image: postgres:11.7
|
||||||
|
mem_limit: 512m
|
||||||
|
environment:
|
||||||
|
- POSTGRES_PASSWORD=alfresco
|
||||||
|
- POSTGRES_USER=alfresco
|
||||||
|
- POSTGRES_DB=alfresco
|
||||||
|
command: postgres -c max_connections=300 -c log_min_messages=LOG
|
||||||
|
|
||||||
|
search:
|
||||||
|
image: alfresco/alfresco-search-services:2.0.1
|
||||||
|
mem_limit: 2g
|
||||||
|
environment:
|
||||||
|
- SOLR_ALFRESCO_HOST=platform
|
||||||
|
- SOLR_ALFRESCO_PORT=8080
|
||||||
|
- SOLR_SOLR_HOST=search
|
||||||
|
- SOLR_SOLR_PORT=8983
|
||||||
|
- SOLR_CREATE_ALFRESCO_DEFAULTS=alfresco,archive
|
||||||
|
- ALFRESCO_SECURE_COMMS=none
|
||||||
|
|
||||||
|
activemq:
|
||||||
|
image: alfresco/alfresco-activemq:5.15.8
|
||||||
|
mem_limit: 256m
|
||||||
|
|
||||||
|
proxy:
|
||||||
|
build: ./nginx-ingress
|
||||||
|
image: local/nginx-ingress:acs
|
||||||
|
ports:
|
||||||
|
- 8080:8080
|
||||||
|
depends_on:
|
||||||
|
- platform
|
||||||
|
8
nginx-ingress/Dockerfile
Normal file
8
nginx-ingress/Dockerfile
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
FROM nginx:stable-alpine
|
||||||
|
|
||||||
|
COPY nginx.conf /etc/nginx/nginx.conf
|
||||||
|
|
||||||
|
COPY entrypoint.sh /
|
||||||
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/entrypoint.sh" ]
|
11
nginx-ingress/entrypoint.sh
Normal file
11
nginx-ingress/entrypoint.sh
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [[ $ACS_PLATFORM_URL ]]; then
|
||||||
|
sed -i s%http:\/\/platform:8080%"$ACS_PLATFORM_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;"
|
52
nginx-ingress/nginx.conf
Normal file
52
nginx-ingress/nginx.conf
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
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_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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -1,80 +0,0 @@
|
|||||||
version: 1
|
|
||||||
|
|
||||||
dn: uid=admin.1,dc=example,dc=org
|
|
||||||
objectClass: organizationalPerson
|
|
||||||
objectClass: person
|
|
||||||
objectClass: top
|
|
||||||
objectClass: uidObject
|
|
||||||
objectClass: simpleSecurityObject
|
|
||||||
objectClass: mailAccount
|
|
||||||
cn: #1
|
|
||||||
sn: Administrator
|
|
||||||
uid: admin.1
|
|
||||||
userPassword: {SSHA}m2qOFBapko4Bky4vbQYCVyW4+KWeuswg/BqObw==
|
|
||||||
mail: admin.1@example.org
|
|
||||||
|
|
||||||
dn: uid=manager.1,dc=example,dc=org
|
|
||||||
objectClass: organizationalPerson
|
|
||||||
objectClass: person
|
|
||||||
objectClass: top
|
|
||||||
objectClass: uidObject
|
|
||||||
objectClass: simpleSecurityObject
|
|
||||||
objectClass: mailAccount
|
|
||||||
cn: #1
|
|
||||||
sn: Manager
|
|
||||||
uid: manager.1
|
|
||||||
userPassword: {SSHA}m2qOFBapko4Bky4vbQYCVyW4+KWeuswg/BqObw==
|
|
||||||
mail: manager.1@example.org
|
|
||||||
|
|
||||||
dn: uid=user.1,dc=example,dc=org
|
|
||||||
objectClass: organizationalPerson
|
|
||||||
objectClass: person
|
|
||||||
objectClass: top
|
|
||||||
objectClass: uidObject
|
|
||||||
objectClass: simpleSecurityObject
|
|
||||||
objectClass: mailAccount
|
|
||||||
cn: #1
|
|
||||||
sn: User
|
|
||||||
uid: user.1
|
|
||||||
userPassword: {SSHA}m2qOFBapko4Bky4vbQYCVyW4+KWeuswg/BqObw==
|
|
||||||
mail: user.1@example.org
|
|
||||||
|
|
||||||
dn: uid=user.2,dc=example,dc=org
|
|
||||||
objectClass: organizationalPerson
|
|
||||||
objectClass: person
|
|
||||||
objectClass: top
|
|
||||||
objectClass: uidObject
|
|
||||||
objectClass: simpleSecurityObject
|
|
||||||
objectClass: mailAccount
|
|
||||||
cn: #2
|
|
||||||
sn: User
|
|
||||||
uid: user.2
|
|
||||||
userPassword: {SSHA}m2qOFBapko4Bky4vbQYCVyW4+KWeuswg/BqObw==
|
|
||||||
mail: user.2@example.org
|
|
||||||
|
|
||||||
dn: cn=power-users,dc=example,dc=org
|
|
||||||
objectClass: groupOfNames
|
|
||||||
objectClass: top
|
|
||||||
cn: power-users
|
|
||||||
member: uid=manager.1,dc=example,dc=org
|
|
||||||
|
|
||||||
dn: cn=admins,dc=example,dc=org
|
|
||||||
objectClass: groupOfNames
|
|
||||||
objectClass: top
|
|
||||||
cn: admins
|
|
||||||
member: uid=admin.1,dc=example,dc=org
|
|
||||||
|
|
||||||
dn: cn=acs-users,dc=example,dc=org
|
|
||||||
objectClass: groupOfNames
|
|
||||||
objectClass: top
|
|
||||||
cn: acs-users
|
|
||||||
member: cn=power-users,dc=example,dc=org
|
|
||||||
member: uid=user.1,dc=example,dc=org
|
|
||||||
|
|
||||||
dn: cn=aps-users,dc=example,dc=org
|
|
||||||
objectClass: groupOfNames
|
|
||||||
objectClass: top
|
|
||||||
cn: aps-users
|
|
||||||
member: cn=power-users,dc=example,dc=org
|
|
||||||
member: uid=user.2,dc=example,dc=org
|
|
||||||
|
|
Reference in New Issue
Block a user