Page History
...
- First, install the necessary prerequisites. You will just need to install three things: Docker Desktop (to run Docker), Git (to access our shared Docker compose files) and finally download those shared Docker compose files.
- Next, using Git, download (clone) the DSpace Angular UI codebase & move into that codebase directory
Code Block # Download the UI codebase git clone git@github.com:DSpace/dspace-angular.git # Move into the created codebase directory cd dspace-angular
- Using the Docker instructions in that codebase, start up both the DSpace 7 REST API and Angular UI via Docker
First, pull down the latest version of the Docker images:
Code Block docker-compose -f docker/docker-compose.yml pull
- Optionally, you can choose to locally rebuild the Angular UI (This is only needed, if you want to try out local changes/customizations to that Angular UI. Otherwise, if you just want to run the default Angular UI, you can skip this step entirely.):
Code Block docker-compose -f docker/docker-compose.yml build
- Finally, start up both the Angular UI and REST API via Docker:
Code Block docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d
- If you'd like to monitor the startup process, you can "tail" the logs as follows:
docker-compose -p d7 logs -f
- If anything goes wrong, occasionally a simple restart of the images will resolve it. Just do a "down" followed by an "up -d" again.
- If you'd like to monitor the startup process, you can "tail" the logs as follows:
Once started up, you can create a default Administrative user via the "dspace-cli" container:
Code Block # This example creates an Admin user with email "test@test.edu" and password "admin" docker-compose -p d7 -f docker/cli.yml run --rm dspace-cli create-administrator -e test@test.edu -f admin -l user -p admin -c en
Then, you can ingest a sample set of AIPs again using the "dspace-cli" container
Code Block docker-compose -p d7 -f docker/cli.yml -f ./docker/cli.ingest.yml run --rm dspace-cli
- In the previous step, you will be testing in Docker using AIP data that is similar in structure to DSpace 6.x. If you'd like to instead test the new Configurable Entities features, we have a separate database dump which provides Entity Test data. (This test data is not yet available in AIP format). Here's how you'd switch to using the Configurable Entities test data
First, you unfortunately need to completely shut down any running volumes and remove them.
Code Block # Shut down the running containers docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml down # Remove any existing volumes docker volume rm $(docker volume ls -q)
Now, let's recreate those containers with the Configurable Entities test data included:
Code Block # NOTE: the `db.entities.yml` here will startup a database image with Entities test data included docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/db.entities.yml up -d # Once started, also load up the Entities test assetstore & trigger a reindex docker-compose -p d7 -f docker/cli.yml -f docker/cli.assetstore.yml run --rm dspace-cli
In order to have a login, let's create an initial Administrator using the "dspace-cli" container:
Code Block # This example creates an Admin user with email "test@test.edu" and password "admin" docker-compose -p d7 -f docker/cli.yml run --rm dspace-cli create-administrator -e test@test.edu -f admin -l user -p admin -c en
- After a few minutes, you should have a full local installation of DSpace 7 Preview (with test data).
- User Interface: http://localhost:3000/
- REST API: http://localhost:8080/server/
- Admin Login: (whatever login you setup via the "dspace-cli" command above)
- Objects/Pages of interest (within the test data):
- Journal Example represents a journal with journal volumes, issues and articles, as detailed in the Configurable Entities Design.
- Publications Example contains publications which contain a combination of plain-text authors and related author entities. It also contains relations to Research Projects and Organizational Units, as detailed in the Configurable Entities design. Navigating to e.g. a Person will reveal their relations to Publications, Research Projects and Organizational Units.
- Submission/Workflow functionality can be tested using one of the collections in this community where the workflow is enabled. You can use the accounts mentioned above to perform the submission and workflow steps. The admin account can perform the submission and all workflow steps as well.
- Once logged in, MyDSpace functionality is found in the user menu (upper right). Submissions can be started from that page, or via the "New → Item" admin menu (if logged in as an Admin).
Once you are done testing, you can stop Docker and clean up the data (deleting the volumes).
Code Block # Shut down the running containers docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml down # Remove all volumes, images, etc (This removes all the existing data and images) docker system prune --volumes
...