A minimal GeoNode 4.2.0 Project, for educational purposes and local testing.
Install Docker for your OS, then just run:
git clone https://github.com/geosolutions-it/geonode-workshop.git
cd geonode-workshop
docker compose build
docker compose up -d
🍵 Take a cup of tea, and relax. The build and startup will take some time.
🕐 In a few minutes your local GeoNode will be visible at http://localhost
👍 Login with admin:geonode
-
You can adapt the
.env
file if you want to change the default secrets and configuration. -
You can also re-generate the
.env
file thrugh thecreate-envfile.py
scriptcreate-envfile.py
accepts the following arguments:--https
: Enable SSL. It's disabled by default--env_type
:- When set to
prod
DEBUG
is disabled and the creation of a validSSL
is requested to Letsencrypt's ACME server - When set to
test
DEBUG
is disabled and a testSSL
certificate is generated for local testing - When set to
dev
DEBUG
is enabled and noSSL
certificate is generated --hostname
: The URL that whill serve GeoNode (localhost
by default)--email
: The administrator's email. Notice that a real email and a valid SMPT configurations are required if--env_type
is seto toprod
. Letsencrypt uses to email for issuing the SSL certificate--geonodepwd
: GeoNode's administrator password. A random value is set if left empty--geoserverpwd
: GeoNode's administrator password. A random value is set if left empty--pgpwd
: PostgreSQL's administrator password. A random value is set if left empty--dbpwd
: GeoNode DB user role's password. A random value is set if left empty--geodbpwd
: GeoNode data DB user role's password. A random value is set if left empty--clientid
: Client id of Geoserver's GeoNode Oauth2 client. A random value is set if left empty--clientsecret
: Client secret of Geoserver's GeoNode Oauth2 client. A random value is set if left empty
Example USAGE
python create-envfile.py -f /opt/core/geonode-project/file.json \
--hostname localhost \
--https \
--email [email protected] \
--geonodepwd gn_password \
--geoserverpwd gs_password \
--pgpwd pg_password \
--dbpwd db_password \
--geodbpwd _db_password \
--clientid 12345 \
--clientsecret abc123
Example JSON expected:
{
"hostname": "value",
"https": "value",
"email": "value",
"geonodepwd": "value",
"geoserverpwd": "value",
"pgpwd": "value",
"dbpwd": "value",
"geodbpwd": "value",
"clientid": "value",
"clientsecret": "value"
}