This repository contains the source code for Docker Images for the DSpace project.
- Docker simplifies the installation requirements for hosting an application by running an application image (docker image) within a containerized environment (docker container).
- Docker Hub is a registry of published application images.
- The DSpace project has published a set of DSpace Images on DockerHub to simplify testing and development of the DSpace platform.
- The project has automated the build of Docker Images for each of the supported branches of the DSpace code base (build details).
- A Docker compose file is used to orchestrate the launch of interdependent containers.
- For DSpace 4, 5 and 6, those containers are the database and tomcat (xmlui, jspui)
- For DSpace 7, the containers are the database, tomcat (for the REST api), and Node (running the Angular UI)
- The Docker compose file manages the allocation of docker volumes which persist the contents of the DSpace database and the DSpace assetstore.
- To enable users (developers and repository mangagers) to easily test the latest code from each of the supported branches of DSpace
- To enable users (developers and repository mangagers) to easily test the code from each published release of DSpace
- To simplify the installation requirements for developers wishing to contribute code to the DSpace platform
- To simplify the management of multiple versions of DSpace (DSpace 5, 6, and 7) on a user's desktop
- To simplify the management of applicaiton dependencies for DSpace 7 (database, REST API, Angular UI) on a user's desktop
- Note: These images are intended for DSpace development purposes and are not appropriate for production use.
- Setting Up Docker
- Running DSpace with Docker Compose
- Running DSpace 7 (Angular+REST) with Docker Compose
- Running DSpace 7 (Angular Only) with Docker Compose
- Manually deploying DSpace with Docker
- Running DSpace + Oracle with Docker compose
- Creating automated builds for your DSpace contributions
This table lists the general purpose docker images supported by the DSpace project. These images are intended to support the testing and development of DSpace from a user's desktop.
Image Name | Status | DockerHub | Sample Labels | Comments |
---|---|---|---|---|
dspace-postgres-pgcrypto | Published | dspace/dspace-postgres-pgcrypto | latest | Postgres image for DSpace 6+. Also suitable for DSpace 5. |
dspace-postgres-4x | Published | dspace/dspace-postgres-4x | latest | Postgres image for DSpace 4x containing a pre-loaded DSpace 4x schema. |
dspace-tomcat | Published | dspace/dspace-tomcat | latest | Used for manual deployment of DSpace. Tomcat + Ant image configured for DSpace. Requires an ant deploy to become usable (otherwise tomcat will start with no DSpace webapps). User must mount DSPACE_SRC in order to deploy. |
dspace | Published | dspace/dspace | dspace-7_x-jdk8 dspace-6_x-jdk8 dspace-5_x-jdk7 tag notes |
Tomcat + Ant with populated dspace-install directory. DSpace code will be cloned and built during image build. Image contains local.cfg or build.properties file suitable for the container. Image variants for "test" exist to make it easier to access all web services. |
dspace-angular | Published | dspace/dspace-angular | latest | Containerized Angular UI |
dspace-angular-bare | Provisionally Published | dspace/dspace-angular-bare | latest | Containerized Angular UI which allows you to mount a source directory_ |
The following Docker Compose files can be used to simplify the management of DSpace components allowing a user to run an end-to-end DSpace instance from their desktop.
Compose File | Host | Image | Volume | Notes |
---|---|---|---|---|
dspace-compose | Running a pre-built DSpace Image for testing purposes | |||
dspacedb | dspace/dspace-postgres-pgcrypto | vol:/pgdata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
dspace-ingest-compose | Compose file designed to assist a user with repository configuration and data ingest. | |||
dspacedb | dspace/dspace-postgres-pgcrypto | vol:/pgdata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
mount:/ingest-tools | ||||
dspace-dev-compose | Runtime DSpace container. User will manually deploy code into the container. | |||
dspacedb | dspace/dspace-postgres-pgcrypto | vol:/pgdata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
mount:/dspace-src | Source code is mounted | |||
rdf-compose | Running a pre-built DSpace Image with RDF Triplestore | |||
dspacedb | dspace/dspace-postgres-pgcrypto | vol:/pgdata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
fuseki | stain/jena-fuseki | |||
dspace7-compose | Compose file to run the DSpace 7 REST API and Angular UI | |||
dspacedb | dspace/dspace-postgres-pgcrypto | vol:/pgdata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
dspace-angular | dspace/dspace-angular | mount: environment.dev.js | REST API in Docker | |
angular-compose | Compose file to run the DSpace 7 Angular UI with an External REST Service | |||
dspace-angular | dspace/dspace-angular | mount: environment.dev.js | REST API is external | |
angular-dev-compose | Compose file to develop the DSpace 7 Angular UI with an External REST Service | |||
dspace-angular | dspace/dspace-angular-bare | mount:/app | Source code is mounted | |
mount: environment.dev.js | REST API is external | |||
dspace-oracle-compose | Compose file for testing DSpace code with Oracle | |||
dspacedb | atmire/dspace-oracle | vol:/oracledata | ||
dspace | dspace/dspace | vol:/assetstore | ||
vol:/solr | ||||
mount:ojdbc6.jar | /dspace/lib/ojdbc6.jar | |||
mount:ojdbc6.jar | /dspace/webapps/*/WEB-INF/ojdbc6.jar |
This table lists DSpace Docker images that have been designed to run in specific cloud environments. An account for a specific cloud environment is necessary to utilize these images.
Image Name | Status | DockerHub | Labels | Compose Files | Comments |
---|---|---|---|---|---|
dspace-janitor-angular | Developed | Referenced by the Janitor service |
The DSpace Wiki contains instructions for using DSpace Images in Codenvy.
This table lists docker images that have been optimized for DSpace software development. These images may be more complex to utilize. These images require a local build from source code.
Image Name | Status | Compose Files | Comments |
---|---|---|---|
dspace-angular-dev | In progress | in project dir | Designed for Angular development, relies on an external REST API |
For more information, join our #dspace-docker Slack channel.