Skip to content

Commit 9744eec

Browse files
authored
Merge pull request #66 from ccdc-opensource/PLA-633
4.0 Release Changes
2 parents b20ad94 + 817fd11 commit 9744eec

15 files changed

+219
-408
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ docker-compose.*.yml
1010
!docker-compose.macromolecule-hub.yml
1111
!docker-compose.sample-enable-sso.yml
1212
!docker-compose.sample-csd-theory-db-config.yml
13-
13+
!docker-compose.sample.ldap.yml
1414

1515
# Other
1616
**.swp

README.md

+41-27
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
# On-Site WebCSD
1+
# On-Site Lattice and WebCSD
22

3-
On-Site WebCSD is currently only available to CCDC industrial customers and other invited groups.
3+
On-Site Lattice and WebCSD is currently only available to CCDC industrial customers and other invited groups.
44

5-
This readme contains information required for installation and updates of On-Site WebCSD.
5+
This readme contains information required for installation and updates of On-Site Lattice and WebCSD.
66

7-
Please use the latest non alpha version from the release tab <https://github.com/ccdc-opensource/on-site-webcsd/releases>, using main may not work as it is not an official release.
8-
Releases prior to version 1.0.0 or with <version>-alpha are alpha releases which will not contain all the functionality currently provided in On-Site WebCSD.
7+
Please use the latest version from the release tab <https://github.com/ccdc-opensource/on-site-webcsd/releases>.
98

109
Terms and conditions can be found in the license.md file.
1110

@@ -18,33 +17,44 @@ This will run on [Docker Desktop](https://docs.docker.com/engine/install/#deskto
1817

1918
Access to the CCDC container registry will require a username and password, to get them please contact CCDC Support.
2019

20+
For version 4.0 onwards, a postgres server is required for CSD and Identity databases. The postgres CSD database will be provided via a download link, to get it, please contact CCDC Support.
21+
2122
A valid license key will be required to use the software.
2223

2324
A download of the desired [release](https://github.com/ccdc-opensource/on-site-webcsd/releases).
2425
Click on the release you want to use, and download the source code zip and unpack.
2526

2627
## Initial recommended specification
2728

28-
Recommended requirements for On-Site WebCSD:
29-
170GB free hd space, 32GB ram, 8 core cpu.
29+
Recommended requirements for postgres server without Macromolecule Hub:
30+
- Postgres version 14 or newer
31+
- 100GB free hd space
3032

31-
Recommended requirements for On-Site WebCSD including Macromolecule Hub:
32-
400GB free hd space, 32GB ram, 8 core cpu.
33+
Recommended requirements for postgres server including Macromolecule Hub:
34+
- Postgres version 14 or newer
35+
- 200GB free hd space
36+
37+
Recommended requirements for On-Site Lattice and WebCSD containers:
38+
- 30GB free hd space, 16GB RAM, 8 core CPU.
3339

34-
On-Site WebCSD should work with any linux OS that meets the requirements to run Docker, but official support is provided by CCDC on the following platforms:
40+
On-Site Lattice and WebCSD should work with any Linux OS that meets the requirements to run Docker, but official support is provided by CCDC on the following platforms. Note that these match the 2023.3 Desktop release.
3541

36-
- Linux - Intel compatible, 64-bit:
37-
- RedHat Enterprise 7.6 or higher, and 8
38-
- CentOS 7.6 or higher
39-
- CentOS Stream 8
40-
- Ubuntu LTS 20 and 22
42+
- RedHat Enterprise 7.6 or higher, 8 and 9
43+
- CentOS 7.6 or higher
44+
- Rocky Linux 8 and 9
45+
- Ubuntu LTS 20 and 22
46+
47+
We will stop support of RedHat and CentOS 7 at the end of June, 2024, in line with their provider.
4148

4249
## In-house Database Configuration
4350

44-
On-Site WebCSD can be configured to read from in-house databases.
51+
On-Site Lattice and WebCSD can be configured to read from in-house databases.
52+
53+
Provided within the installation are sample databases which can be found in the sample-data folder in the root of the installation.
54+
4555
To enable these databases follow:
4656

47-
1. Copy and rename the file `docker-compose.sample-onsite-only-db-config.yml` to `docker-compose.db-config.yml`
57+
1. Copy and rename the file `docker-compose.sample-On-Site-only-db-config.yml` to `docker-compose.db-config.yml`
4858
2. Edit the `volumes` section of that file to point to any in-house databases and edit the `environment` section to configure the application to recognise these databases.
4959

5060
More information is given in the notes & example sections of the sample file. This acts as an [override file](https://docs.docker.com/compose/extends/) which you will have to include in the startup command.
@@ -68,9 +78,10 @@ Here is an example of the .env file:
6878

6979
```
7080
CCDC_LICENSING_CONFIGURATION=la-code;123456-123456-123456-123456-123456-123456;
71-
CSD_DB_PASSWORD=A password of your choosing
72-
CSD_CACHE_PASSWORD=A password of your choosing
73-
WEBCSD_PORT=80
81+
CSD_DB_CONNECTIONSTRING=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=passwordhere
82+
IDENTITY_DB_CONNECTIONSTRING=Server=database-server;Port=5432;Database=csd-identity;User Id=postgres;Password=passwordhere
83+
PLATFORM_PORT=443
84+
PUBLIC_URI=https://csd-software.local
7485
```
7586

7687
Where stated, some of these variables will be provided by CCDC; all other variables are for the user to generate and set.
@@ -83,9 +94,12 @@ docker login -u <user> -p <password> ccdcrepository.azurecr.io
8394
docker login -u <user> --password-stdin ccdcrepository.azurecr.io
8495

8596
# As of v2.0.0, containers run as non root users. Because of this you will need to run the following in the on-site-webcsd directory:
86-
sudo adduser ccdc
97+
sudo adduser ccdc --uid=1397
8798
sudo chown -R ccdc:ccdc userdata/
8899

100+
# If you are upgrading from an older version to v4.0.0, ensure the user id is set to 1397
101+
sudo usermod -u 1397 ccdc
102+
89103
# You will also need to ensure the user "ccdc" has read access to any in-house or CSP databases by using the command above on relevant directories.
90104

91105
#Use one of the following commands:
@@ -97,10 +111,10 @@ docker compose up -d
97111
docker compose -f docker-compose.yml -f docker-compose.db-config.yml up -d
98112

99113
#Use this command if you have in-house databases and want macromolecule hub
100-
docker compose -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
114+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
101115

102116
#Use this command if you have no in-house databases and want macromolecule hub
103-
docker compose -f docker-compose.macromolecule-hub.yml up -d
117+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml up -d
104118
```
105119

106120
## Updates
@@ -124,10 +138,10 @@ docker compose up -d
124138
docker compose -f docker-compose.yml -f docker-compose.db-config.yml up -d
125139

126140
#Use this command if you have in-house databases and want macromolecule hub
127-
docker compose -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
141+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
128142

129143
#Use this command if you have no in-house databases and want macromolecule hub
130-
docker compose -f docker-compose.macromolecule-hub.yml up -d
144+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml up -d
131145
```
132146

133147
## Verifying the Installation/Update
@@ -144,8 +158,8 @@ For more information see the [Docker volumes documentation](https://docs.docker.
144158

145159
## Usage
146160

147-
To access the WebCSD service locally go to <http://localhost> in a browser.
161+
To access the On-Site Lattice and WebCSD service locally go to <http://localhost> in a browser.
148162

149163
## Contact support
150164

151-
If you experience any difficulties with installing or using On-Site WebCSD, please contact our support team at <support@ccdc.cam.ac.uk> who will be happy to assist you.
165+
If you experience any difficulties with installing or using On-Site Lattice and WebCSD, please contact our support team at <support@ccdc.cam.ac.uk> who will be happy to assist you.

docker-compose.disable-user-access.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
# To disable User Access Control include this file in the startup command with -f docker-compose.disable-user-access.yml will
1+
# On-Site Version 4.0
2+
# To disable User Access Control include this file in the startup command with -f docker-compose.disable-user-access.yml
23
version: '3.6'
34

45
services:

docker-compose.macromolecule-hub.yml

+7-160
Original file line numberDiff line numberDiff line change
@@ -1,192 +1,39 @@
1+
# On-Site Version 4.0
12
version: "3.6"
23

3-
x-labels: &k8s-labels
4-
kompose.image-pull-secret: pullsecret
5-
64
services:
75
webcsd:
86
environment:
9-
- CsdRepository__ServiceLocation=webcsdbackend
10-
- CspRepository__ServiceLocation=webcsd-theory
117
- CsdRepository__SketcherFeatures__1=Proteins
12-
depends_on:
13-
- ccdc-csd-searchservice
14-
- csd-request-entry
15-
image: ccdcrepository.azurecr.io/onsite/webcsd:3.0.0
16-
ports:
17-
- ${WEBCSD_PORT}:${WEBCSD_PORT}
18-
volumes:
19-
- ./userdata:/app/OnSite
20-
labels:
21-
<<: *k8s-labels
22-
kompose.service.type: LoadBalancer
23-
kompose.service.expose: "true"
24-
8+
259
webcsdbackend:
26-
depends_on:
27-
- ccdc-csd-searchservice
28-
- csd-request-entry
29-
image: ccdcrepository.azurecr.io/onsite/webcsdbackend:3.0.0
3010
environment:
31-
- ServiceSettings__StructureInfoLocation=/csd-data/structure-links.csv
3211
- CCDC_LICENSING_CONFIGURATION=${CCDC_LICENSING_CONFIGURATION}
3312
- ServiceSettings__Databases__1__Name=PDB Database
3413
- ServiceSettings__Databases__1__DbeName=pdb
3514
- ServiceSettings__Databases__1__ConnectionString=dbe
36-
labels:
37-
<<: *k8s-labels
38-
39-
redis:
40-
labels:
41-
<<: *k8s-labels
42-
image: redis
43-
user: redis
44-
restart: always
45-
command: redis-server --requirepass ${CSD_CACHE_PASSWORD}
46-
expose:
47-
- 6379
48-
49-
database-server:
50-
labels:
51-
<<: *k8s-labels
52-
image: ccdcrepository.azurecr.io/onsite/macromolecule-hub-database:2.0.0
53-
# This can be removed next time db image is updated
54-
user: postgres
55-
restart: always
56-
environment:
57-
- POSTGRES_PASSWORD=${CSD_DB_PASSWORD}
58-
command:
59-
- "postgres"
60-
- "-c"
61-
- "max_connections=1000"
62-
expose:
63-
- 5432
6415

6516
ccdc-csd-substructuresearch:
66-
labels:
67-
<<: *k8s-labels
68-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-substructuresearch-api:3.0.0
69-
depends_on:
70-
- database-server
71-
- ccdc-csd-resultstore
72-
- ccdc-csd-substructure-filter
73-
- ccdc-csd-fingerprint
74-
- ccdc-csd-deposition
7517
environment:
76-
- StructureSearchReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=substructure
77-
- PdbReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=structure_optimisation
18+
- PdbReadConnection=${CSD_DB_CONNECTIONSTRING};SearchPath=structure_optimisation
7819
- SubstructureSearchDatabaseConfiguration__Databases__1__Name=pdb
7920
- SubstructureSearchDatabaseConfiguration__Databases__1__SettingsKey=PdbReadConnection
8021

8122
ccdc-csd-deposition:
82-
labels:
83-
<<: *k8s-labels
84-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-deposition-api:3.0.0
85-
depends_on:
86-
- database-server
8723
environment:
88-
- CsdDepositionReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=csd_schema
89-
- DepositionPdbReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=pdb_schema
24+
- DepositionPdbReadConnection=${CSD_DB_CONNECTIONSTRING};SearchPath=pdb_schema
9025
- DatabaseConfiguration__Databases__1__Name=pdb
9126
- DatabaseConfiguration__Databases__1__SettingsKey=DepositionPdbReadConnection
9227

9328
ccdc-csd-textnumericsearch:
94-
labels:
95-
<<: *k8s-labels
96-
depends_on:
97-
- database-server
98-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-textnumericsearch-api:3.0.0
9929
environment:
100-
- CsdReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=csd_schema
101-
- PdbReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=pdb_schema
30+
- PdbReadConnection=${CSD_DB_CONNECTIONSTRING};SearchPath=pdb_schema
10231
- DatabaseConfiguration__Databases__1__Name=pdb
10332
- DatabaseConfiguration__Databases__1__SettingsKey=PdbReadConnection
10433

105-
ccdc-csd-searchservice:
106-
labels:
107-
<<: *k8s-labels
108-
depends_on:
109-
- ccdc-csd-textnumericsearch
110-
- ccdc-csd-substructuresearch
111-
- ccdc-csd-resultstore
112-
- ccdc-csd-similaritysearch
113-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-searchservice-api:3.0.0
114-
115-
csd-request-entry:
116-
labels:
117-
<<: *k8s-labels
118-
depends_on:
119-
- ccdc-csd-deposition
120-
- ccdc-csd-crystal-structure-export
121-
image: ccdcrepository.azurecr.io/onsite/csd-request-entry-api:3.0.0
122-
123-
ccdc-csd-formulasearch:
124-
labels:
125-
<<: *k8s-labels
126-
depends_on:
127-
- database-server
128-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-formulasearch-api:3.0.0
129-
environment:
130-
- FormulaSearchReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=formula
13134

13235
ccdc-csd-unitcellsearch:
133-
labels:
134-
<<: *k8s-labels
135-
depends_on:
136-
- database-server
137-
- ccdc-csd-reducedcell-calculation-service
138-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-unit-cell-search:3.0.0
13936
environment:
140-
- UnitCellSearchReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=unitcell
141-
- UnitCellPdbReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=pdb_cell_optimisation
37+
- UnitCellPdbReadConnection=${CSD_DB_CONNECTIONSTRING};SearchPath=pdb_cell_optimisation
14238
- DatabaseConfiguration__Databases__1__Name=pdb
143-
- DatabaseConfiguration__Databases__1__SettingsKey=UnitCellPdbReadConnection
144-
145-
ccdc-csd-resultstore:
146-
labels:
147-
<<: *k8s-labels
148-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-resultstore-api:3.0.0
149-
environment:
150-
- OrderedCachePassword=${CSD_CACHE_PASSWORD}
151-
152-
ccdc-csd-similaritysearch:
153-
depends_on:
154-
- database-server
155-
- ccdc-csd-fingerprint
156-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-structure-similarity-search:3.0.0
157-
environment:
158-
- StructureSimilaritySearchReadConnection=Server=database-server;Port=5432;Database=csd-database;User Id=postgres;Password=${CSD_DB_PASSWORD};SearchPath=similarity
159-
160-
ccdc-csd-fingerprint:
161-
labels:
162-
<<: *k8s-labels
163-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-fingerprint-service:3.0.0
164-
restart: unless-stopped
165-
166-
ccdc-csd-substructure-filter:
167-
labels:
168-
<<: *k8s-labels
169-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-substructure-filter-service:3.0.0
170-
restart: unless-stopped
171-
172-
ccdc-csd-crystal-structure-export:
173-
labels:
174-
<<: *k8s-labels
175-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-crystal-structure-export-service:3.0.0
176-
restart: unless-stopped
177-
178-
ccdc-csd-reducedcell-calculation-service:
179-
labels:
180-
<<: *k8s-labels
181-
image: ccdcrepository.azurecr.io/onsite/ccdc-csd-reducedcell-calculation-service:3.0.0
182-
restart: unless-stopped
183-
184-
webcsd-theory:
185-
labels:
186-
<<: *k8s-labels
187-
image: ccdcrepository.azurecr.io/onsite/csd-theory:3.0.0
188-
environment:
189-
- CCDC_LICENSING_CONFIGURATION=${CCDC_LICENSING_CONFIGURATION}
190-
191-
volumes:
192-
csd_data: {}
39+
- DatabaseConfiguration__Databases__1__SettingsKey=UnitCellPdbReadConnection

docker-compose.port-configuration.yml

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
# On-Site Version 4.0
12
version: "3.6"
23

34
services:

0 commit comments

Comments
 (0)