See the Release Notes for the latest available version of 7.x, and the original DSpace 7.0 Press Release for more information. |
DSpace 7 brings to DSpace a single, modern user interface and REST API and integrates current technological standards and best practices. This new UI combines with the existing core backend of DSpace 6, resulting in a lean, responsive, next-generation repository.
The preview release provides a first look at many of the new features that make DSpace 7 the largest development effort in the history of the software:
DSpace 7 builds on DSpace 6 to create a modern and future-focused repository. The backend restructuring from DSpace 6 is retained and combined with the features above to create a powerful repository designed to address current user needs and plan for future standards.
DSpace 7 is the first version of DSpace to be developed using test-driven development practices designed to identify and address issues earlier in the development process and lead to more stable releases. It is also the first release to use a working group model for decisions related to design and development.
See the DSpace 7 Release Notes for more information on this release.
If you want to quickly test out the latest DSpace 7 code, you may do so using our demo site.
Keep in mind, our User Interface Demo uses the REST API Demo as the backend. So, any content created (by anyone) will immediately appear in both locations.
Currently, we offer three different ways to install / run DSpace 7 locally. The route you choose may depend on exactly what you'd like to try out. Choose ONE of the following:
The below instructions provide a quick way to start up both the User Interface and REST API in a Docker environment. However, if you are already familiar with Docker or plan to use it more heavily, you may wish to also review our detailed Docker Compose instructions for both the frontend (User Interface) and backend (REST API). |
Running DSpace 7 via Docker allows you to quickly & easily install and start up all the "parts" of DSpace (database, Solr index, REST API, user interface) without having to install them all yourself. This will work on any operating system (Windows 10, Mac OS, or Linux). Keep in mind, this setup will REQUIRE at least 6GB of memory allocated for Docker. However, 8GB is recommended, if you have it available.
git version
" from Command Prompt or Powershellgit version
" from your terminal to see if it's available. If Git is not yet installed, you will be prompted to install developer tools. If that approach doesn't work, Git may also be downloaded.git version
" to check for it. If it is not installed, install Git using your package manager (e.g. sudo apt-get install git
)# Download the UI codebase git clone https://github.com/DSpace/dspace-angular.git # Move into the created codebase directory cd dspace-angular # Switch to the 7.x maintenance branch (latest 7.x code) git checkout dspace-7_x |
First, pull down the latest version of the Docker images (both frontend and backend):
docker-compose -f docker/docker-compose.yml -f docker/docker-compose-rest.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.):
docker-compose -f docker/docker-compose.yml build |
Finally, start up both the Angular UI and REST API via Docker:
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 using "logs -f":
docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml logs -f |
# Shut down everything docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml down # Restart everything docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d |
[Option #1: Use AIP test data] We have a set of AIP (Archival Information Package) data which was exported from a DSpace 6.x instance. This test data is good to get a quick feel for the changes in DSpace 7 compared to DSpace 6. It's also the easiest to quickly import as we have an ingest script written for Docker using the "dspace-cli" container. Just run:
# If you don't have an Admin created with the email "test@test.edu", create it. The AIP ingest runs as that user by default. 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 # This second command will import a batch of test/sample AIPs (see "cli.ingest.yml" for more info) docker-compose -p d7 -f docker/cli.yml -f ./docker/cli.ingest.yml run --rm dspace-cli |
First, you unfortunately need to completely shut down any running volumes and remove them. We will be replacing them with a database dump of Entity test data.
# Shut down the running containers docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml down # Remove ALL existing volumes docker volume rm $(docker volume ls -q) # NOTE: If you don't want to remove all volumes, you can also remove the volumes in two steps # First, list all volumes, and look for any that have a name starting with "d7". There likely will be 4. docker volume ls # Then, delete each volume (by name) one by one. docker volume rm [volume-name] |
Now, let's recreate those containers with the Configurable Entities test data included:
# NOTE: the `db.entities.yml` here will startup a database image with Entities test data included (from a database dump) docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/db.entities.yml up -d # Optionally watch the logs of that command to make sure everything starts back up properly docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml -f docker/db.entities.yml logs -f # Finally, once started, also load up the Entities test "assetstore" (files) & trigger a reindex docker-compose -p d7 -f docker/cli.yml -f docker/cli.assetstore.yml run --rm dspace-cli |
Finally, in order to have an initial login, let's create an initial Administrator account using the "dspace-cli" container:
# This example creates an Admin user with email "test@test.edu" and password "admin". # (You may have already created this user above, before loading AIP test data. If so, you can skip this) 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 |
Once you are done testing, you can stop Docker and clean up the data (deleting the volumes).
# 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 |
The instructions below are meant as a quick guide for how to install the User Interface quickly & use the REST API demo as a backend. Please keep in mind the official installation instructions are at Installing DSpace. These "user interface only" instructions are only useful for trying out the UI for demo/sandboxing purposes. |
Running only the DSpace 7 user interface can be done quickly & easily on any operating system (Windows, Mac OS, or Linux). By default, the installed user interface will use the DSpace 7 REST API Demo (https://demo.dspace.org/server/) as its backend. This means that you will immediately see test data (from that demo site) and be able to interact with it. However, you will need to authenticate using the REST API Demo account. Any changes you make will also obviously appear on that shared REST API Demo site.
git version
at your command line), you can install it via https://git-scm.com/downloads (or via your local package manager tools for Linux or Mac OS)Then, download our "dspace-angular" application (which is the DSpace 7 user interface) and run it. All you should need to do is the steps in the "Quick Start" at: https://github.com/DSpace/dspace-angular/#quick-start
# clone the repo git clone https://github.com/DSpace/dspace-angular.git # change directory to our repo cd dspace-angular # Switch to the 7.x maintenance branch (latest 7.x code) git checkout dspace-7_x # install the local dependencies yarn install # start the server yarn start |
Ctrl+C
The DSpace 7 installation process describes manually installing both the frontend (User Interface) and backend (REST API) of DSpace 7 on a local machine. The frontend and backend need not be installed on the same machine.
If you discover an issue in DSpace 7, here's how to report it:
Thank you first for trying out DSpace 7! Reporting issues (see above) or simply trying things out is already a big help. However, there are other ways you can contribute and help make DSpace 7 even better (and/or help it get released even more quickly):