You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: docs/src/content/docs/self-hosting/docker.md
+39-9
Original file line number
Diff line number
Diff line change
@@ -8,52 +8,82 @@ sidebar:
8
8
Scrumlr can be deployed using a Docker Compose file. This is the easiest way to get started with Scrumlr.
9
9
We maintain a Docker Compose file in our Repository that you can use to deploy Scrumlr.
10
10
11
-
## Prerequisites
11
+
# Prerequisites
12
+
12
13
Clone the Scrumlr repository to your server and navigate to the deployment directory.
14
+
13
15
```sh
14
16
git clone https://github.com/inovex/scrumlr.io
15
17
cd scrumlr.io/deployment/docker
16
18
```
17
19
18
20
Copy the `.env.example` file to `.env` and adjust the variables to your needs.
21
+
19
22
```sh
20
23
cp .env.example .env
21
24
```
22
25
23
-
## Generating needed secrets
26
+
For a new deployment the mandatory variables to fill out are `POSTGRES_PASSWORD` and `SCRUMLR_PRIVATE_KEY`.
27
+
28
+
# Generating needed secrets
24
29
25
30
### Postgres Password
26
31
27
-
Generate a secure password for the Postgres database.
28
-
Make sure to set the `POSTGRES_PASSWORD`variable in your .env file to the generated password.
32
+
Make sure to set the `POSTGRES_PASSWORD`variable in your `.env` file to a secure password. For example you can generate a 64 characters long one from the terminal with the following command (if you have `pwgen` installed):
33
+
29
34
```sh
30
35
pwgen -s 64 1
31
36
```
37
+
32
38
### JWT Private Key
39
+
33
40
We use an ECDSA private key to sign the JWT tokens.
34
41
***Make sure to keep this key secure as it can be used to decrypt the tokens and generate new ones, potentially compromising your users' accounts.***
You can now start the deployment using the following command.
62
+
45
63
```sh
46
64
docker-compose up -d
47
65
```
48
66
67
+
After a few seconds you can check with `docker ps --all` to see if all the containers have started up. If one crashed or if there is an issue you can check logs with `docker logs (container name or id)`
68
+
49
69
## Reverse Proxy
70
+
50
71
We strongly recommend using a reverse proxy to handle TLS termination and to provide a secure connection to your users.
51
-
Scrumlr should work with all major reverse proxies like Nginx, Traefik, or Caddy.
72
+
Scrumlr should work with all major reverse proxies like [Nginx](https://nginx.org), [Traefik](https://traefik.io/traefik/) or [Caddy](https://caddyserver.com/docs/quick-starts/reverse-proxy).
52
73
We automatically include a caddy deployment in the docker-compose file, which you can use as a reverse proxy.
53
-
All you need to do is updating the Caddyfile to include your host domain instead of `0.0.0.0:80`.
54
-
If you dont want TLS you can simply keep the specified port.
74
+
All you need to do is updating the `Caddyfile` to include your host domain instead of `0.0.0.0:80`.
75
+
If you don't want TLS you can simply keep the specified port.
55
76
Keep in mind that running Scrumlr without TLS is **not recommended**.
77
+
56
78
```
57
79
your_domain {
58
80
}
59
81
```
82
+
83
+
# Troubleshooting
84
+
85
+
## Scrumlr works fine on my machine, but others get an error when they click on "Start now"
86
+
87
+
Make sure the `SCRUMLR_SERVER_URL` in the `.env` file uses your external ip address, instead of `localhost` or `127.0.0.1`. You can search "what is my ip" on the internet to find your external ip address.
0 commit comments