🏛

DSpace 9 — Institutional Repository

Ubuntu 22.04 LTS · REST API · Angular · HTTPS / Let's Encrypt

Leading open source institutional repository — deploy DSpace 9 in one click on Azure. Full pre-configured stack: Tomcat (REST API), Angular (frontend), Nginx, PostgreSQL, Solr and automatic HTTPS certificate.

🏗 Technical Stack

ComponentValue
Operating SystemUbuntu 22.04 LTS
ApplicationDSpace 9.x
REST APITomcat (Java backend)
User InterfaceAngular (frontend)
Reverse proxy / HTTPSNginx + Let's Encrypt (automatic)
DatabasePostgreSQL
Search EngineApache Solr

✨ Key Features

📦 Modern REST API

Complete HAL+JSON REST API for integration with third-party systems and Angular clients.

🖥 Angular Interface

Fully responsive Angular frontend — browsing, submission and viewing of collections.

🔍 Solr Search

Full-text and faceted search — metadata and digital object content indexing.

🔒 Automatic HTTPS

Let's Encrypt certificate provisioned automatically — DNS monitoring via dspace-dns-watch.timer.

🗄 Integrated PostgreSQL

Relational database pre-configured for DSpace — schema, users and permissions initialized.

☁️ Azure Ready

Deployed via cloud-init — VM operational in minutes from Azure Marketplace.

⚙️ systemd Services

ServiceRole
tomcatDSpace REST API (Java backend)
dspace-frontendAngular interface (frontend)
nginxReverse proxy — HTTP/HTTPS routing, TLS termination
postgresqlRelational database
solrSearch and indexing engine

🚀 Getting Started

1

SSH connection to the VM

After deployment from the Marketplace, connect via SSH with the chosen admin username.

ssh <admin-username>@<your-vm-ip>
2

Create the DSpace administrator account

Create the first administrator account via the DSpace command line.

sudo /opt/dspace/bin/dspace create-administrator
3

Check services

Confirm all services are up and running.

sudo systemctl status tomcat sudo systemctl status dspace-frontend sudo systemctl status nginx sudo systemctl status postgresql sudo systemctl status solr
4

Access the interfaces

DSpace exposes several access points on your VM:

InterfaceURL
Angular Frontendhttps://<ip>/
Admin loginhttps://<ip>/login
REST APIhttps://<ip>/server
Solr (local only)http://localhost:8983/solr
5

SSL / Let's Encrypt Certificate

A self-signed certificate is active by default. Once a domain name (FQDN) resolves to your IP, dspace-dns-watch.timer detects the resolution and automatically provisions a Let's Encrypt certificate.

sudo cat /root/.dspace-credentials

🔗 Resources