A minimal GeoNode 5 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
.envfile if you want to change the default secrets and configuration. -
You can also re-generate the
.envfile thrugh thecreate-envfile.pyscriptcreate-envfile.pyaccepts the following arguments:--https: Enable SSL. It's disabled by default--env_type:- When set to
prodDEBUGis disabled and the creation of a validSSLis requested to Letsencrypt's ACME server - When set to
testDEBUGis disabled and a testSSLcertificate is generated for local testing - When set to
devDEBUGis enabled and noSSLcertificate is generated --hostname: The URL that whill serve GeoNode (localhostby default)--email: The administrator's email. Notice that a real email and a valid SMPT configurations are required if--env_typeis 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"
}