Skip to content

Commit 72fad0a

Browse files
committed
Update/Enhance Docker README with latest info
1 parent 0f22978 commit 72fad0a

1 file changed

Lines changed: 39 additions & 7 deletions

File tree

docker/README.md

Lines changed: 39 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,20 @@
66
If you wish to run DSpace on Docker in production, we recommend building your own Docker images. You are welcome to borrow ideas/concepts from the below images in doing so. But, the below images should not be used "as is" in any production scenario.
77
***
88

9-
## 'Dockerfile' in root directory
9+
## Overview
10+
The scripts in this directory can be used to start the DSpace User Interface (frontend) in Docker.
11+
Optionally, the backend (REST API) might also be started in Docker.
12+
13+
For additional options/settings in starting the backend (REST API) in Docker, see the Docker Compose
14+
documentation for the backend: https://github.com/DSpace/DSpace/blob/main/dspace/src/main/docker-compose/README.md
15+
16+
## Root directory
17+
18+
The root directory of this project contains all the Dockerfiles which may be referenced by
19+
the Docker compose scripts in this 'docker' folder.
20+
21+
### Dockerfile
22+
1023
This Dockerfile is used to build a *development* DSpace 7 Angular UI image, published as 'dspace/dspace-angular'
1124

1225
```
@@ -20,6 +33,8 @@ Admins to our DockerHub repo can manually publish with the following command.
2033
docker push dspace/dspace-angular:dspace-7_x
2134
```
2235

36+
### Dockerfile.dist
37+
2338
The `Dockerfile.dist` is used to generate a *production* build and runtime environment.
2439

2540
```bash
@@ -29,7 +44,7 @@ docker build -f Dockerfile.dist -t dspace/dspace-angular:dspace-7_x-dist .
2944

3045
A default/demo version of this image is built *automatically*.
3146

32-
## docker directory
47+
## 'docker' directory
3348
- docker-compose.yml
3449
- Starts DSpace Angular with Docker Compose from the current branch. This file assumes that a DSpace 7 REST instance will also be started in Docker.
3550
- docker-compose-rest.yml
@@ -54,25 +69,41 @@ docker-compose -f docker/docker-compose.yml build
5469

5570
## To start DSpace (REST and Angular) from your branch
5671

72+
This command provides a quick way to start both the frontend & backend from this single codebase
5773
```
5874
docker-compose -p d7 -f docker/docker-compose.yml -f docker/docker-compose-rest.yml up -d
5975
```
6076

77+
Keep in mind, you may also start the backend by cloning the 'DSpace/DSpace' GitHub repository separately. See the next section.
78+
79+
6180
## Run DSpace REST and DSpace Angular from local branches.
81+
82+
This section assumes that you have clones *both* the 'DSpace/DSpace' and 'DSpace/dspace-angular' GitHub
83+
repositories. When both are available locally, you can spin up both in Docker and have them work together.
84+
6285
_The system will be started in 2 steps. Each step shares the same docker network._
6386

64-
From DSpace/DSpace (build as needed)
87+
From 'DSpace/DSpace' clone (build first as needed):
6588
```
6689
docker-compose -p d7 up -d
6790
```
6891

69-
From DSpace/DSpace-angular
92+
NOTE: More detailed instructions on starting the backend via Docker can be found in the [Docker Compose instructions for the Backend](https://github.com/DSpace/DSpace/blob/main/dspace/src/main/docker-compose/README.md).
93+
94+
From 'DSpace/dspace-angular' clone (build first as needed)
7095
```
7196
docker-compose -p d7 -f docker/docker-compose.yml up -d
7297
```
7398

99+
At this point, you should be able to access the UI from http://localhost:4000,
100+
and the backend at http://localhost:8080/server/
101+
74102
## Run DSpace Angular dist build with DSpace Demo site backend
75103

104+
This allows you to run the Angular UI in *production* mode, pointing it at the demo backend
105+
(https://api7.dspace.org/server/).
106+
76107
```
77108
docker-compose -f docker/docker-compose-dist.yml pull
78109
docker-compose -f docker/docker-compose-dist.yml build
@@ -104,9 +135,10 @@ Load assetstore content and trigger a re-index of the repository
104135
docker-compose -p d7 -f docker/cli.yml -f docker/cli.assetstore.yml run --rm dspace-cli
105136
```
106137

107-
## End to end testing of the rest api (runs in travis).
108-
_In this instance, only the REST api runs in Docker using the Entities dataset. Travis will perform CI testing of Angular using Node to drive the tests._
138+
## End to end testing of the REST API (runs in GitHub Actions CI).
139+
_In this instance, only the REST api runs in Docker using the Entities dataset. GitHub Actions will perform CI testing of Angular using Node to drive the tests. See `.github/workflows/build.yml` for more details._
109140

141+
This command is only really useful for testing our Continuous Integration process.
110142
```
111-
docker-compose -p d7ci -f docker/docker-compose-travis.yml up -d
143+
docker-compose -p d7ci -f docker/docker-compose-ci.yml up -d
112144
```

0 commit comments

Comments
 (0)