Wiki
Clone wikimobilecoach-documentation / Setting-up-the-server-with-docker
Setting up the server with Docker
Requirements
Server:
- Linux server with hostname <HOSTNAME>
- Ports 80, 443, <PORT_TOMCAT> and <PORT_DEEPSTREAM> open
- Docker installed (version 18.0.3 +)
- Certbot installed (for SSL certificates)
- Docker-compose installed v1.3+
- Openssl and openjdk installed
- Git installed
- Sudo access
Configuration
1. Connect to the server
- Open your terminal (Mac) / CMD (Windows)
ssh <USERNAME>@<HOSTNAME>
For example:
ssh sgfeller@workshop-cdhi.ethz.ch
Optional but recommended: Create a new folder in the root directory where you afterwards pull the config. For example:
cd /. sudo mkdir /opt/ cd opt
2. Pulling the configs
Pull the configuration and move into the mobilecoach-server folder.
The rest of the commands in the following sections need to be run in folder mobilecoach-server
sudo bash git clone https://bitbucket.org/mobilecoach/mobilecoach-server.git cd mobilecoach-server
3. Install letsencrypt certificates & updating config files
In order to generate the certificates and perform the configuration, a script must first be executed.
chmod +x ./setup-server.sh ./setup-server.sh
At the start, four details are required:
Hostname, Tomcat Port, Deepstream Port and an email address needed for the letsencrypt notifications.
It looks like this:
Please enter the hostname of the server (example: workshop-cdhi.ethz.ch) Please enter the tomcat port (example: 8443) Please enter the deepstream port (example: 6020) Please enter your email id for letsencrypt notices (example: abcd@ef.gh)
The entered information is displayed again for verification.
If all entries are correct, a "yes" must be entered.
The information provided, hostname: workshop-cdhi.ethz.ch, tomcat port: 8443, deepstream port: 6020 and email: sgfeller@ethz.ch Are you sure of these details, and used this script with 'sudo' and want to continue setup? If okay, please answer with 'yes'
A password is generated that must be entered twice.
Please copy and use *8fbff0f0e4e636a2* as export password below. Enter Export Password: Verifying - Enter Export Password:
4. Modifying the MobileCoach configuration file for different purposes. (Optional)
All other variables are explained in this Wiki entry. All server variables explained
5. Starting the server
Starting the server for the first time
docker-compose up -d
docker-compose stop docker-compose start docker-compose restart
docker-compose down
Note: The default admin username and password is admin and admin respectively.
6. Renewing the SSL certificates
Make sure the script renew.sh is runnable. Run the following command.
chmod +x ./renew.sh
For renewal, just run the following command.
./renew.sh
Note: If you get asked about "Eintragsalias tomcat ist bereits vorhanden. Überschreiben? [Nein]" you can answer with "Ja".
7. Troubleshooting
- to be displayed
8. Advanced user options
- to be displayed
Updated