# Setup of a GeoNode project to test the available customizations This section shows how to setup a GeoNode project called `my_geonode` that can be use as playground to test customizations. This setup is meant to be used only for development purposes. Here are the steps on how to setup this environment We prepared a [my_geonode project](https://github.com/geosolutions-it/my_geonode) that can be cloned and used for our customizations, alternatively it is possible to create a geonode-project from scratch (see [geonode-project repository](https://github.com/GeoNode/geonode-project) for more info). Clone the `my_geonode` project in your workspace ```bash git clone https://github.com/geosolutions-it/my_geonode -b 4.0.3 ``` Navigate to the cloned repository ```bash cd my_geonode ``` Create an `.env` file for a development environment by running the following command ```bash python create-envfile.py --env_type dev ``` Replace the `GEOSERVER_ADMIN_PASSWORD` variable with the default GeoServer password inside the `.env` file ```diff GEOSERVER_ADMIN_USER=admin - GEOSERVER_ADMIN_PASSWORD=generatedpwd + GEOSERVER_ADMIN_PASSWORD=geoserver ``` Verify that the current `src/my_geonode/` folder is a volume of the `x-common-django` configuration. This will allow us to change template or static file and see the changes applied on the client on the fly ```diff x-common-django: &default-common-django image: ${COMPOSE_PROJECT_NAME}_django:4.0 restart: on-failure env_file: - .env volumes: + - './src:/usr/src/my_geonode' - statics:/mnt/volumes/statics - geoserver-data-dir:/geoserver_data/data - backup-restore:/backup_restore - data:/data - tmp:/tmp depends_on: db: condition: service_healthy geoserver: condition: service_healthy ``` Check the `src/requirements.txt` file and ensure it is pointing to the correct version of GeoNode and geonode-mapstore-client ``` -e git+https://github.com/GeoNode/geonode-mapstore-client.git@4.0.x#egg=django_geonode_mapstore_client -e git+https://github.com/GeoNode/geonode.git@4.0.x#egg=GeoNode ``` Build the docker images with following command ```bash docker-compose build ``` Run the GeoNode docker container with ```bash docker-compose up -d ``` Finally we can access to our development instance at http://localhost/ #### [Next Section: Viewer and plugins configurations](003_CONFIGURATION.md)