Skip to content

Commit d4f991a

Browse files
authored
Merge pull request #76 from ccdc-opensource/update_docs
Be clearer about enabling SSL in documentation
2 parents 87cffef + 960c69e commit d4f991a

File tree

3 files changed

+61
-41
lines changed

3 files changed

+61
-41
lines changed

README.md

+51-33
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,14 @@ Additional information including user configuration and troubleshooting can be f
1313
## Prerequisites
1414

1515
A standard [Docker Server](https://docs.docker.com/engine/install/#server) and [Docker Compose](https://docs.docker.com/compose/install/) installation is required for installation.
16+
We recommend installing the latest version of Docker from these links.
1617
This will run on [Docker Desktop](https://docs.docker.com/engine/install/#desktop), however this is not recommended and may [require a license](https://www.docker.com/legal/docker-subscription-service-agreement/).
1718

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

2021
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-
Once you have the download link please follow the instructions at [Setting Up Your PostgreSQL Server](https://github.com/ccdc-opensource/on-site-webcsd/wiki/Setting-up-your-PostgreSQL-server) to restore the
22-
database into your environment.
22+
Once you have the download link please follow the instructions at [Setting Up Your PostgreSQL Server](https://github.com/ccdc-opensource/on-site-webcsd/wiki/Setting-up-your-PostgreSQL-server) to restore
23+
the database into your environment.
2324

2425
A valid license key will be required to use the software.
2526

@@ -29,30 +30,31 @@ Click on the release you want to use, and download the source code zip and unpac
2930
## Initial recommended specification
3031

3132
Recommended requirements for postgres server without Macromolecule Hub:
32-
- Postgres version 14 or newer
33-
- 100GB free hd space
33+
34+
- Postgres version 14 or newer
35+
- 100GB free hd space
3436

3537
Recommended requirements for postgres server including Macromolecule Hub:
36-
- Postgres version 14 or newer
37-
- 200GB free hd space
38-
38+
39+
- Postgres version 14 or newer
40+
- 200GB free hd space
41+
3942
Recommended requirements for On-Site Lattice and WebCSD containers:
40-
- 30GB free hd space, 16GB RAM, 8 core CPU.
4143

42-
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.
44+
- 30GB free hd space, 16GB RAM, 8 core CPU.
4345

44-
- RedHat Enterprise 7.6 or higher, 8 and 9
45-
- CentOS 7.6 or higher
46-
- Rocky Linux 8 and 9
47-
- Ubuntu LTS 20 and 22
48-
49-
We will stop support of RedHat and CentOS 7 at the end of June, 2024, in line with their provider.
46+
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.
47+
Note that these match the 2024.2 Desktop release.
48+
49+
- RedHat Enterprise Linux 8 and 9
50+
- Rocky Linux 8 and 9
51+
- Ubuntu LTS 22 and 24
5052

5153
## In-house Database Configuration
5254

5355
On-Site Lattice and WebCSD can be configured to read from in-house databases.
5456

55-
Provided within the installation are sample databases which can be found in the sample-data folder in the root of the installation.
57+
Provided within the installation are sample databases which can be found in the sample-data folder in the root of the installation.
5658

5759
To enable these databases follow:
5860

@@ -65,6 +67,17 @@ More information is given in the notes & example sections of the sample file. Th
6567

6668
Instructions on setting up CSD-Theory Web can be found in the [wiki](https://github.com/ccdc-opensource/on-site-webcsd/wiki/Setting-up-CSD%E2%80%90Theory-Web)
6769

70+
## SSL Configuration
71+
72+
Connecting to your WebCSD server via https is now required.
73+
To configure this you will need an SSL certificate and private key.
74+
Ask your local IT staff to set these up for you.
75+
76+
Please follow the instructions at [Configuring SSL](https://github.com/ccdc-opensource/on-site-webcsd/wiki/Configuring-SSL) to configure SSL.
77+
78+
If the WebCSD server is run without configuring SSL a built-in self-signed certificate will be used.
79+
This is not recommended as it is insecure.
80+
6881
## Installation
6982

7083
After unpacking the release source code onto the server on which the software will be installed you will need to go into the on-site-webcsd directory and copy the environment file `sample.env` as `.env`.
@@ -75,10 +88,11 @@ cd on-site-webcsd
7588
cp sample.env .env
7689
```
7790

78-
You will need to update the .env file with your licence key and the two passwords you would like to use.
79-
Here is an example of the .env file:
91+
You will need to update the `.env` file with your licence key, your database server details and
92+
the URL you will use for your WebCSD server.
93+
Here is an example of the `.env` file:
8094

81-
```
95+
```console
8296
CCDC_LICENSING_CONFIGURATION=la-code;123456-123456-123456-123456-123456-123456;
8397
DB_CONNECTIONSTRING=Server=database-server;Port=5432;User Id=postgres;Password=passwordhere
8498
CSD_DATABASE=csd-database
@@ -96,34 +110,36 @@ docker login -u <user> -p <password> ccdcrepository.azurecr.io
96110
# or to be prompted for the password
97111
docker login -u <user> --password-stdin ccdcrepository.azurecr.io
98112

99-
# 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:
113+
# As of v2.0.0, containers run as non root users.
114+
# Because of this you will need to create the CCDC user if it does not already exist.
100115
sudo adduser ccdc --uid=1397
101-
sudo chown -R ccdc:ccdc userdata/
102116

103117
# If you are upgrading from an older version to v4.0.0, ensure the user id is set to 1397
104118
sudo usermod -u 1397 ccdc
105119

106-
# 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.
120+
# You will also need to ensure the user "ccdc" has read access to any in-house or CSP databases.
121+
# E.g. if these are in the userdata directory:
122+
sudo chown -R ccdc:ccdc userdata/
107123

108-
# Use one of the following commands:
124+
# Use one of the following commands
109125

110126
#Use this command if you have no in-house databases and don't want to use macromolecule hub
111-
docker compose up -d
127+
docker compose -f docker-compose.yml -f docker-compose.ssl.yml up -d
112128

113129
#Use this command if you have in-house databases and don't want to use macromolecule hub
114-
docker compose -f docker-compose.yml -f docker-compose.db-config.yml up -d
130+
docker compose -f docker-compose.yml -f docker-compose.db-config.yml -f docker-compose.ssl.yml up -d
115131

116132
#Use this command if you have in-house databases and want macromolecule hub
117-
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
133+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml -f docker-compose.ssl.yml up -d
118134

119135
#Use this command if you have no in-house databases and want macromolecule hub
120-
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml up -d
136+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.ssl.yml up -d
121137
```
122138

123139
## Updates
124140

125141
When you have been notified when there is an update available you can download the newest release from the github repository.
126-
Oce you have downloaded the new release, ensure the default old files have been removed and any custom configuration files have been moved to the new release directory.
142+
Once you have downloaded the new release, ensure the default old files have been removed and any custom configuration files have been moved to the new release directory.
127143

128144
Once the latest installation files have been obtained, to update the software, pull the latest images, and restart the stack.
129145
The latest images can be pulled whilst the stack is running and changes will only come into effect upon restarting the stack.
@@ -135,16 +151,16 @@ docker compose down
135151
#Use one of the following commands:
136152

137153
#Use this command if you have no in-house databases and don't want to use macromolecule hub
138-
docker compose up -d
154+
docker compose -f docker-compose.yml -f docker-compose.ssl.yml up -d
139155

140156
#Use this command if you have in-house databases and don't want to use macromolecule hub
141-
docker compose -f docker-compose.yml -f docker-compose.db-config.yml up -d
157+
docker compose -f docker-compose.yml -f docker-compose.db-config.yml -f docker-compose.ssl.yml up -d
142158

143159
#Use this command if you have in-house databases and want macromolecule hub
144-
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml up -d
160+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.db-config.yml -f docker-compose.ssl.yml up -d
145161

146162
#Use this command if you have no in-house databases and want macromolecule hub
147-
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml up -d
163+
docker compose -f docker-compose.yml -f docker-compose.macromolecule-hub.yml -f docker-compose.ssl.yml up -d
148164
```
149165

150166
## Verifying the Installation/Update
@@ -161,7 +177,9 @@ For more information see the [Docker volumes documentation](https://docs.docker.
161177

162178
## Usage
163179

164-
To access the On-Site Lattice and WebCSD service locally go to <http://localhost> in a browser.
180+
To access the On-Site Lattice and WebCSD service locally go to <https://full.server.hostname> in a browser,
181+
replacing `full.server.hostname` by the full hostname of your Docker host. `PUBLIC_URI` should also be set to this
182+
URL in `.env` for authentication to work correctly.
165183

166184
## Contact support
167185

docker-compose.sample.ssl.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ version: "3.6"
33
services:
44
csd-platform:
55
volumes:
6-
- ./ssl/cert.crt:/etc/nginx/ssl/server_cert.crt:ro
7-
- ./ssl/cert.key:/etc/nginx/ssl/server_key.key:ro
6+
- /path/to/ssl/cert.crt:/etc/nginx/ssl/server_cert.crt:ro
7+
- /path/to/ssl/cert.key:/etc/nginx/ssl/server_key.key:ro

sample.env

+8-6
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,16 @@ CCDC_LICENSING_CONFIGURATION=la-code;123456-123456-123456-123456-123456-123456;
66
# Configure the server, port, user ID, and password to match your Postgres server
77
DB_CONNECTIONSTRING=Server=database-server;Port=5432;User Id=postgres;Password=passwordhere
88

9-
# The database the CSD backup has been restored to
10-
CSD_DATABASE=csd-database
11-
12-
# Database for the v4 login system. This will be created at application startup if it doesn't already exist.
13-
IDENTITY_DATABASE=csd-identity
14-
159
# Defines the base URL for the platform
10+
# This must be changed to the full hostname of your WebCSD server
1611
PUBLIC_URI=https://csd-software.local
1712

1813
#You don't need to change this unless you want to run on a different port
1914
PLATFORM_PORT=443
15+
16+
# The database the CSD backup has been restored to
17+
CSD_DATABASE=csd-database
18+
19+
# Database for the v4 login system. This will be created at application startup if it doesn't already exist.
20+
# You don't need to change this unless you have an existing identity database with a different name
21+
IDENTITY_DATABASE=csd-identity

0 commit comments

Comments
 (0)