Skip to content

Commit dc6268c

Browse files
afabianiafabianigiohappy
authored
Align to GeoNode master (4.2.0) and improve/fix docker initialization (GeoNode#11308)
* - Externalizing "UID" filed from the "settings.py" * - Pep8 issues * Align to GeoNode master (4.2.0) and improve/fix docker initialization * - Update test docker-docker-compose-test * Update .env_test test file * Bump to 4.2.0dev0 * Update .circleci config.yml file * Increase the Django healthcheck timeout time * Typo on GEOSERVER_JAVA_OPTS * Update docker-compose-test django healthcheck with retries * Update docker-compose-test django healthcheck with retries * Fix test cases * - Removing the fixed "IS_MANAGER" field in favor of a pluggable generic "OpenIDGroupRoleMapper" class * - Fix docker compose structure and .env.sample labels * Configure Django apps * fix typos * fix * - Update docker-compose-test.yml image names * - Black formatting issues * removed Azure ID env vars * dropped PUBLIC_PORT * gitignore .env file * disable abbreviated params * renamed OGC credential vars and introduced OGC_SERVER_FACTORY_PASSWORD * removed useless OGC_ADMIN_* vars * renamved to GEOSERVER_FACTORY_PASSWORD * use django-admin instead of django-admin.py * fixed monitoring fixtures * fixes blowfish deprecation warning * fix to update method * break loop if succeeding * fix formmatting * - Alingning docker-compose-dev to docker-compose * set nginx image version * remove wrong folder pushed by error * set nginx image version in all compose files * Improvements to create-envfile documentation * move location of Geoserver LB host variables * Remove geoserver_ui variable from .env.sample --------- Co-authored-by: afabiani <alessio.fabiani@geo-solutions.it> Co-authored-by: Giovanni Allegri <giohappy@gmail.com>
1 parent d95db9f commit dc6268c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+716
-449
lines changed

.circleci/config.yml

+12-12
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@ jobs:
2323

2424
- run:
2525
name: Build the stack
26-
command: docker-compose -f docker-compose-test.yml build --no-cache
26+
command: docker-compose --env-file .env_test -f docker-compose-test.yml build --no-cache
2727
working_directory: ./
2828

2929
- run:
3030
name: Start the stack
31-
command: docker-compose -f docker-compose-test.yml up -d
31+
command: docker-compose --env-file .env_test -f docker-compose-test.yml up -d
3232
working_directory: ./
3333

3434
- run:
@@ -78,21 +78,21 @@ jobs:
7878
- run:
7979
name: Run test suite
8080
command: |
81-
docker-compose -f docker-compose-test.yml exec db psql -U postgres -c 'SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid();'
82-
docker-compose -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_postgres
83-
docker-compose -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode
84-
docker-compose -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode_data
85-
docker-compose -f docker-compose-test.yml exec db psql -U postgres -d test_geonode -c 'CREATE EXTENSION IF NOT EXISTS postgis;'
86-
docker-compose -f docker-compose-test.yml exec db psql -U postgres -d test_geonode_data -c 'CREATE EXTENSION IF NOT EXISTS postgis;'
87-
docker-compose -f docker-compose-test.yml exec django bash -c '<<parameters.test_suite>>'
81+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -c 'SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE pid <> pg_backend_pid();'
82+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_postgres
83+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode
84+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db createdb -U postgres -T postgres test_geonode_data
85+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -d test_geonode -c 'CREATE EXTENSION IF NOT EXISTS postgis;'
86+
docker-compose --env-file .env_test -f docker-compose-test.yml exec db psql -U postgres -d test_geonode_data -c 'CREATE EXTENSION IF NOT EXISTS postgis;'
87+
docker-compose --env-file .env_test -f docker-compose-test.yml exec django bash -c '<<parameters.test_suite>>'
8888
working_directory: ./
8989
no_output_timeout: 10m
9090
- run:
9191
name: Run code quality checks
9292
command: |
93-
docker-compose -f docker-compose-test.yml exec django bash -c 'black --check geonode'
94-
docker-compose -f docker-compose-test.yml exec django bash -c 'flake8 geonode'
95-
docker-compose -f docker-compose-test.yml exec django bash -c 'codecov; bash <(curl -s https://codecov.io/bash) -t 2c0e7780-1640-45f0-93a3-e103b057d8c8'
93+
docker-compose --env-file .env_test -f docker-compose-test.yml exec django bash -c 'black --check geonode'
94+
docker-compose --env-file .env_test -f docker-compose-test.yml exec django bash -c 'flake8 geonode'
95+
docker-compose --env-file .env_test -f docker-compose-test.yml exec django bash -c 'codecov; bash <(curl -s https://codecov.io/bash) -t 2c0e7780-1640-45f0-93a3-e103b057d8c8'
9696
working_directory: ./
9797

9898
workflows:

.env .env.sample

+51-42
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
COMPOSE_PROJECT_NAME=geonode
2-
DOCKERHOST=
3-
DOCKER_HOST_IP=
42
# See https://github.com/containers/podman/issues/13889
53
# DOCKER_BUILDKIT=0
64
DOCKER_ENV=production
@@ -13,43 +11,39 @@ C_FORCE_ROOT=1
1311
FORCE_REINIT=false
1412
INVOKE_LOG_STDOUT=true
1513

16-
# LANGUAGE_CODE=pt
14+
# LANGUAGE_CODE=it-it
1715
# LANGUAGES=(('en-us','English'),('it-it','Italiano'))
1816

1917
DJANGO_SETTINGS_MODULE=geonode.settings
2018
GEONODE_INSTANCE_NAME=geonode
21-
GEONODE_LB_HOST_IP=
22-
GEONODE_LB_PORT=
23-
PUBLIC_PORT=80
24-
NGINX_BASE_URL=
2519

2620
# #################
2721
# backend
2822
# #################
2923
POSTGRES_USER=postgres
30-
POSTGRES_PASSWORD=postgres
24+
POSTGRES_PASSWORD={pgpwd}
3125
GEONODE_DATABASE=geonode
3226
GEONODE_DATABASE_USER=geonode
33-
GEONODE_DATABASE_PASSWORD=geonode
27+
GEONODE_DATABASE_PASSWORD={dbpwd}
3428
GEONODE_GEODATABASE=geonode_data
3529
GEONODE_GEODATABASE_USER=geonode_data
36-
GEONODE_GEODATABASE_PASSWORD=geonode_data
30+
GEONODE_GEODATABASE_PASSWORD={geodbpwd}
3731
GEONODE_DATABASE_SCHEMA=public
3832
GEONODE_GEODATABASE_SCHEMA=public
3933
DATABASE_HOST=db
4034
DATABASE_PORT=5432
41-
DATABASE_URL=postgis://geonode:geonode@db:5432/geonode
42-
GEODATABASE_URL=postgis://geonode_data:geonode_data@db:5432/geonode_data
35+
DATABASE_URL=postgis://geonode:{dbpwd}@db:5432/geonode
36+
GEODATABASE_URL=postgis://geonode_data:{geodbpwd}@db:5432/geonode_data
4337
GEONODE_DB_CONN_MAX_AGE=0
4438
GEONODE_DB_CONN_TOUT=5
4539
DEFAULT_BACKEND_DATASTORE=datastore
4640
BROKER_URL=amqp://guest:guest@rabbitmq:5672/
4741
CELERY_BEAT_SCHEDULER=celery.beat:PersistentScheduler
4842
ASYNC_SIGNALS=True
4943

50-
SITEURL=https://localhost/
44+
SITEURL={siteurl}/
5145

52-
ALLOWED_HOSTS=['django', '*']
46+
ALLOWED_HOSTS="['django', '{hostname}']"
5347

5448
# Data Uploader
5549
DEFAULT_BACKEND_UPLOADER=geonode.importer
@@ -64,13 +58,14 @@ HAYSTACK_SEARCH_RESULTS_PER_PAGE=200
6458
# nginx
6559
# HTTPD Server
6660
# #################
67-
GEONODE_LB_HOST_IP=localhost
68-
GEONODE_LB_PORT=80
61+
GEONODE_LB_HOST_IP=django
62+
GEONODE_LB_PORT=8000
63+
NGINX_BASE_URL={siteurl}
6964

7065
# IP or domain name and port where the server can be reached on HTTPS (leave HOST empty if you want to use HTTP only)
7166
# port where the server can be reached on HTTPS
72-
HTTP_HOST=
73-
HTTPS_HOST=localhost
67+
HTTP_HOST={http_host}
68+
HTTPS_HOST={https_host}
7469

7570
HTTP_PORT=80
7671
HTTPS_PORT=443
@@ -80,20 +75,22 @@ HTTPS_PORT=443
8075
# disabled : we do not get a certificate at all (a placeholder certificate will be used)
8176
# staging : we get staging certificates (are invalid, but allow to test the process completely and have much higher limit rates)
8277
# production : we get a normal certificate (default)
83-
# LETSENCRYPT_MODE=disabled
84-
LETSENCRYPT_MODE=staging
78+
LETSENCRYPT_MODE={letsencrypt_mode}
79+
# LETSENCRYPT_MODE=staging
8580
# LETSENCRYPT_MODE=production
8681

8782
RESOLVER=127.0.0.11
8883

8984
# #################
9085
# geoserver
9186
# #################
92-
GEOSERVER_WEB_UI_LOCATION=https://localhost/geoserver/
93-
GEOSERVER_PUBLIC_LOCATION=https://localhost/geoserver/
94-
GEOSERVER_LOCATION=http://geoserver:8080/geoserver/
87+
GEOSERVER_LB_HOST_IP=geoserver
88+
GEOSERVER_LB_PORT=8080
89+
GEOSERVER_WEB_UI_LOCATION={siteurl}/geoserver/
90+
GEOSERVER_PUBLIC_LOCATION={siteurl}/geoserver/
91+
GEOSERVER_LOCATION=http://${GEOSERVER_LB_HOST_IP}:${GEOSERVER_LB_PORT}/geoserver/
9592
GEOSERVER_ADMIN_USER=admin
96-
GEOSERVER_ADMIN_PASSWORD=geoserver
93+
GEOSERVER_ADMIN_PASSWORD={geoserverpwd}
9794

9895
OGC_REQUEST_TIMEOUT=30
9996
OGC_REQUEST_MAX_RETRIES=1
@@ -104,7 +101,7 @@ OGC_REQUEST_POOL_CONNECTIONS=10
104101
# Java Options & Memory
105102
ENABLE_JSONP=true
106103
outFormat=text/javascript
107-
GEOSERVER_JAVA_OPTS="-Djava.awt.headless=true -Xms2G -Xmx4G -Dgwc.context.suffix=gwc -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/var/log/jvm.log -XX:PerfDataSamplingInterval=500 -XX:SoftRefLRUPolicyMSPerMB=36000 -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -XX:ParallelGCThreads=4 -Dfile.encoding=UTF8 -Djavax.servlet.request.encoding=UTF-8 -Djavax.servlet.response.encoding=UTF-8 -Duser.timezone=GMT -Dorg.geotools.shapefile.datetime=false -DGS-SHAPEFILE-CHARSET=UTF-8 -DGEOSERVER_CSRF_DISABLED=true -DPRINT_BASE_URL=http://geoserver:8080/geoserver/pdf -DALLOW_ENV_PARAMETRIZATION=true -Xbootclasspath/a:/usr/local/tomcat/webapps/geoserver/WEB-INF/lib/marlin-0.9.3-Unsafe.jar -Dsun.java2d.renderer=org.marlin.pisces.MarlinRenderingEngine"
104+
GEOSERVER_JAVA_OPTS='-Djava.awt.headless=true -Xms4G -Xmx4G -Dgwc.context.suffix=gwc -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/var/log/jvm.log -XX:PerfDataSamplingInterval=500 -XX:SoftRefLRUPolicyMSPerMB=36000 -XX:-UseGCOverheadLimit -XX:ParallelGCThreads=4 -Dfile.encoding=UTF8 -Djavax.servlet.request.encoding=UTF-8 -Djavax.servlet.response.encoding=UTF-8 -Duser.timezone=GMT -Dorg.geotools.shapefile.datetime=false -DGS-SHAPEFILE-CHARSET=UTF-8 -DGEOSERVER_CSRF_DISABLED=true -DPRINT_BASE_URL={geoserver_ui}/geoserver/pdf -DALLOW_ENV_PARAMETRIZATION=true -Xbootclasspath/a:/usr/local/tomcat/webapps/geoserver/WEB-INF/lib/marlin-0.9.3-Unsafe.jar -Dsun.java2d.renderer=org.marlin.pisces.MarlinRenderingEngine'
108105

109106
# #################
110107
# Security
@@ -117,8 +114,8 @@ GEOSERVER_JAVA_OPTS="-Djava.awt.headless=true -Xms2G -Xmx4G -Dgwc.context.suffix
117114
# in DB will honored.
118115

119116
ADMIN_USERNAME=admin
120-
ADMIN_PASSWORD=admin
121-
ADMIN_EMAIL=admin@localhost
117+
ADMIN_PASSWORD={geonodepwd}
118+
ADMIN_EMAIL={email}
122119

123120
# EMAIL Notifications
124121
EMAIL_ENABLE=False
@@ -129,29 +126,36 @@ DJANGO_EMAIL_HOST_USER=
129126
DJANGO_EMAIL_HOST_PASSWORD=
130127
DJANGO_EMAIL_USE_TLS=False
131128
DJANGO_EMAIL_USE_SSL=False
132-
DEFAULT_FROM_EMAIL='GeoNode <no-reply@geonode.org>'
129+
DEFAULT_FROM_EMAIL='{email}' # eg Company <no-reply@company.org>
133130

134131
# Session/Access Control
135132
LOCKDOWN_GEONODE=False
136-
CORS_ALLOW_ALL_ORIGINS=True
137133
X_FRAME_OPTIONS="SAMEORIGIN"
138134
SESSION_EXPIRED_CONTROL_ENABLED=True
139135
DEFAULT_ANONYMOUS_VIEW_PERMISSION=True
140136
DEFAULT_ANONYMOUS_DOWNLOAD_PERMISSION=True
141137

138+
CORS_ALLOW_ALL_ORIGINS=True
139+
GEOSERVER_CORS_ENABLED=True
140+
GEOSERVER_CORS_ALLOWED_ORIGINS=*
141+
GEOSERVER_CORS_ALLOWED_METHODS=GET,POST,PUT,DELETE,HEAD,OPTIONS
142+
GEOSERVER_CORS_ALLOWED_HEADERS=*
143+
142144
# Users Registration
143145
ACCOUNT_OPEN_SIGNUP=True
144146
ACCOUNT_EMAIL_REQUIRED=True
145147
ACCOUNT_APPROVAL_REQUIRED=False
146148
ACCOUNT_CONFIRM_EMAIL_ON_GET=False
147149
ACCOUNT_EMAIL_VERIFICATION=none
150+
ACCOUNT_EMAIL_CONFIRMATION_EMAIL=False
151+
ACCOUNT_EMAIL_CONFIRMATION_REQUIRED=False
148152
ACCOUNT_AUTHENTICATION_METHOD=username_email
149153
AUTO_ASSIGN_REGISTERED_MEMBERS_TO_REGISTERED_MEMBERS_GROUP_NAME=True
150154

151155
# OAuth2
152156
OAUTH2_API_KEY=
153-
OAUTH2_CLIENT_ID=Jrchz2oPY3akmzndmgUTYrs9gczlgoV20YPSvqaV
154-
OAUTH2_CLIENT_SECRET=rCnp5txobUo83EpQEblM8fVj3QT5zb5qRfxNsuPzCqZaiRyIoxM4jdgMiZKFfePBHYXCLd7B8NlkfDBY9HKeIQPcy5Cp08KQNpRHQbjpLItDHv12GvkSeXp6OxaUETv3
157+
OAUTH2_CLIENT_ID={clientid}
158+
OAUTH2_CLIENT_SECRET={clientsecret}
155159

156160
# GeoNode APIs
157161
API_LOCKDOWN=False
@@ -161,9 +165,9 @@ TASTYPIE_APIKEY=
161165
# Production and
162166
# Monitoring
163167
# #################
164-
DEBUG=False
168+
DEBUG={debug}
165169

166-
SECRET_KEY='myv-y4#7j-d*p-__@j#*3z@!y24fz8%^z2v6atuy4bo9vqr1_a'
170+
SECRET_KEY='{secret_key}'
167171

168172
STATIC_ROOT=/mnt/volumes/statics/static/
169173
MEDIA_ROOT=/mnt/volumes/statics/uploaded/
@@ -177,7 +181,7 @@ MEMCACHED_LOCATION=127.0.0.1:11211
177181
MEMCACHED_LOCK_EXPIRE=3600
178182
MEMCACHED_LOCK_TIMEOUT=10
179183

180-
MAX_DOCUMENT_SIZE=2
184+
MAX_DOCUMENT_SIZE=200
181185
CLIENT_RESULTS_LIMIT=5
182186
API_LIMIT_PER_PAGE=1000
183187

@@ -207,13 +211,6 @@ FAVORITE_ENABLED=True
207211
RESOURCE_PUBLISHING=False
208212
ADMIN_MODERATE_UPLOADS=False
209213

210-
# PostgreSQL
211-
POSTGRESQL_MAX_CONNECTIONS=200
212-
213-
# Upload Size Limiting
214-
DEFAULT_MAX_UPLOAD_SIZE=5368709120
215-
DEFAULT_MAX_PARALLEL_UPLOADS_PER_USER=100
216-
217214
# LDAP
218215
LDAP_ENABLED=False
219216
LDAP_SERVER_URL=ldap://<the_ldap_server>
@@ -232,10 +229,22 @@ LDAP_GROUP_PROFILE_MEMBER_ATTR=uniqueMember
232229
# ##
233230
# Note right autoscale value must coincide with worker concurrency value
234231
# CELERY__AUTOSCALE_VALUES="15,10"
235-
# CELERY__WORKER_CONCURRENCY="4"
232+
# CELERY__WORKER_CONCURRENCY="10"
236233
# ##
237234
# CELERY__OPTS="--without-gossip --without-mingle -Ofair -B -E"
238235
# CELERY__BEAT_SCHEDULE="/mnt/volumes/statics/celerybeat-schedule"
239236
# CELERY__LOG_LEVEL="INFO"
240237
# CELERY__LOG_FILE="/var/log/celery.log"
241238
# CELERY__WORKER_NAME="worker1@%h"
239+
240+
# PostgreSQL
241+
POSTGRESQL_MAX_CONNECTIONS=200
242+
243+
# Common containers restart policy
244+
RESTART_POLICY_CONDITION="on-failure"
245+
RESTART_POLICY_DELAY="5s"
246+
RESTART_POLICY_MAX_ATTEMPTS="3"
247+
RESTART_POLICY_WINDOW=120s
248+
249+
DEFAULT_MAX_UPLOAD_SIZE=5368709120
250+
DEFAULT_MAX_PARALLEL_UPLOADS_PER_USER=5

.env_dev

+32-17
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
COMPOSE_PROJECT_NAME=geonode
2-
DOCKERHOST=
3-
DOCKER_HOST_IP=
42
# See https://github.com/containers/podman/issues/13889
53
# DOCKER_BUILDKIT=0
64
DOCKER_ENV=production
@@ -13,15 +11,11 @@ C_FORCE_ROOT=1
1311
FORCE_REINIT=false
1412
INVOKE_LOG_STDOUT=true
1513

16-
# LANGUAGE_CODE=pt
17-
# LANGUAGES=(('en','English'),('pt','Portuguese'))
14+
# LANGUAGE_CODE=it-it
15+
# LANGUAGES=(('en-us','English'),('it-it','Italiano'))
1816

1917
DJANGO_SETTINGS_MODULE=geonode.settings
2018
GEONODE_INSTANCE_NAME=geonode
21-
GEONODE_LB_HOST_IP=
22-
GEONODE_LB_PORT=
23-
PUBLIC_PORT=80
24-
NGINX_BASE_URL=
2519

2620
# #################
2721
# backend
@@ -64,8 +58,11 @@ HAYSTACK_SEARCH_RESULTS_PER_PAGE=200
6458
# nginx
6559
# HTTPD Server
6660
# #################
67-
GEONODE_LB_HOST_IP=localhost
68-
GEONODE_LB_PORT=80
61+
GEONODE_LB_HOST_IP=django
62+
GEONODE_LB_PORT=8000
63+
GEOSERVER_LB_HOST_IP=geoserver
64+
GEOSERVER_LB_PORT=8080
65+
NGINX_BASE_URL=http://localhost
6966

7067
# IP or domain name and port where the server can be reached on HTTPS (leave HOST empty if you want to use HTTP only)
7168
# port where the server can be reached on HTTPS
@@ -95,21 +92,27 @@ GEOSERVER_LOCATION=http://localhost:8080/geoserver/
9592
GEOSERVER_ADMIN_USER=admin
9693
GEOSERVER_ADMIN_PASSWORD=geoserver
9794

98-
OGC_REQUEST_TIMEOUT=60
99-
OGC_REQUEST_MAX_RETRIES=0
95+
OGC_REQUEST_TIMEOUT=30
96+
OGC_REQUEST_MAX_RETRIES=1
10097
OGC_REQUEST_BACKOFF_FACTOR=0.3
10198
OGC_REQUEST_POOL_MAXSIZE=10
10299
OGC_REQUEST_POOL_CONNECTIONS=10
103100

104101
# Java Options & Memory
105102
ENABLE_JSONP=true
106103
outFormat=text/javascript
107-
GEOSERVER_JAVA_OPTS="-Djava.awt.headless=true -Xms2G -Xmx4G -Dgwc.context.suffix=gwc -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/var/log/jvm.log -XX:PerfDataSamplingInterval=500 -XX:SoftRefLRUPolicyMSPerMB=36000 -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -XX:ParallelGCThreads=4 -Dfile.encoding=UTF8 -Djavax.servlet.request.encoding=UTF-8 -Djavax.servlet.response.encoding=UTF-8 -Duser.timezone=GMT -Dorg.geotools.shapefile.datetime=false -DGS-SHAPEFILE-CHARSET=UTF-8 -DGEOSERVER_CSRF_DISABLED=true -DPRINT_BASE_URL=http://localhost:8080/geoserver/pdf -DALLOW_ENV_PARAMETRIZATION=true -Xbootclasspath/a:/usr/local/tomcat/webapps/geoserver/WEB-INF/lib/marlin-0.9.3-Unsafe.jar -Dsun.java2d.renderer=org.marlin.pisces.MarlinRenderingEngine"
104+
GEOSERVER_JAVA_OPTS='-Djava.awt.headless=true -Xms4G -Xmx4G -Dgwc.context.suffix=gwc -XX:+UnlockDiagnosticVMOptions -XX:+LogVMOutput -XX:LogFile=/var/log/jvm.log -XX:PerfDataSamplingInterval=500 -XX:SoftRefLRUPolicyMSPerMB=36000 -XX:-UseGCOverheadLimit -XX:ParallelGCThreads=4 -Dfile.encoding=UTF8 -Djavax.servlet.request.encoding=UTF-8 -Djavax.servlet.response.encoding=UTF-8 -Duser.timezone=GMT -Dorg.geotools.shapefile.datetime=false -DGS-SHAPEFILE-CHARSET=UTF-8 -DGEOSERVER_CSRF_DISABLED=true -DPRINT_BASE_URL=http://localhost:8080/geoserver/pdf -DALLOW_ENV_PARAMETRIZATION=true -Xbootclasspath/a:/usr/local/tomcat/webapps/geoserver/WEB-INF/lib/marlin-0.9.3-Unsafe.jar -Dsun.java2d.renderer=org.marlin.pisces.MarlinRenderingEngine'
108105

109106
# #################
110107
# Security
111108
# #################
112109
# Admin Settings
110+
#
111+
# ADMIN_PASSWORD is used to overwrite the GeoNode admin password **ONLY** the first time
112+
# GeoNode is run. If you need to overwrite it again, you need to set the env var FORCE_REINIT,
113+
# otherwise the invoke updateadmin task will be skipped and the current password already stored
114+
# in DB will honored.
115+
113116
ADMIN_USERNAME=admin
114117
ADMIN_PASSWORD=admin
115118
ADMIN_EMAIL=admin@localhost
@@ -127,18 +130,25 @@ DEFAULT_FROM_EMAIL='GeoNode <no-reply@geonode.org>'
127130

128131
# Session/Access Control
129132
LOCKDOWN_GEONODE=False
130-
CORS_ALLOW_ALL_ORIGINS=True
131133
X_FRAME_OPTIONS="SAMEORIGIN"
132134
SESSION_EXPIRED_CONTROL_ENABLED=True
133135
DEFAULT_ANONYMOUS_VIEW_PERMISSION=True
134136
DEFAULT_ANONYMOUS_DOWNLOAD_PERMISSION=True
135137

138+
CORS_ALLOW_ALL_ORIGINS=True
139+
GEOSERVER_CORS_ENABLED=True
140+
GEOSERVER_CORS_ALLOWED_ORIGINS=*
141+
GEOSERVER_CORS_ALLOWED_METHODS=GET,POST,PUT,DELETE,HEAD,OPTIONS
142+
GEOSERVER_CORS_ALLOWED_HEADERS=*
143+
136144
# Users Registration
137145
ACCOUNT_OPEN_SIGNUP=True
138146
ACCOUNT_EMAIL_REQUIRED=True
139147
ACCOUNT_APPROVAL_REQUIRED=False
140148
ACCOUNT_CONFIRM_EMAIL_ON_GET=False
141149
ACCOUNT_EMAIL_VERIFICATION=none
150+
ACCOUNT_EMAIL_CONFIRMATION_EMAIL=False
151+
ACCOUNT_EMAIL_CONFIRMATION_REQUIRED=False
142152
ACCOUNT_AUTHENTICATION_METHOD=username_email
143153
AUTO_ASSIGN_REGISTERED_MEMBERS_TO_REGISTERED_MEMBERS_GROUP_NAME=True
144154

@@ -171,7 +181,7 @@ MEMCACHED_LOCATION=127.0.0.1:11211
171181
MEMCACHED_LOCK_EXPIRE=3600
172182
MEMCACHED_LOCK_TIMEOUT=10
173183

174-
MAX_DOCUMENT_SIZE=2
184+
MAX_DOCUMENT_SIZE=200
175185
CLIENT_RESULTS_LIMIT=5
176186
API_LIMIT_PER_PAGE=1000
177187

@@ -204,6 +214,11 @@ ADMIN_MODERATE_UPLOADS=False
204214
# PostgreSQL
205215
POSTGRESQL_MAX_CONNECTIONS=200
206216

207-
# Upload Size Limiting
217+
# Common containers restart policy
218+
RESTART_POLICY_CONDITION="on-failure"
219+
RESTART_POLICY_DELAY="5s"
220+
RESTART_POLICY_MAX_ATTEMPTS="3"
221+
RESTART_POLICY_WINDOW=120s
222+
208223
DEFAULT_MAX_UPLOAD_SIZE=5368709120
209-
DEFAULT_MAX_PARALLEL_UPLOADS_PER_USER=100
224+
DEFAULT_MAX_PARALLEL_UPLOADS_PER_USER=5

0 commit comments

Comments
 (0)