Skip to content

Commit 5ba860b

Browse files
committed
2 parents e7d5d1f + df6284a commit 5ba860b

1 file changed

Lines changed: 130 additions & 33 deletions

File tree

README.md

Lines changed: 130 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,126 @@
1-
# WoL Redirect
2-
3-
WoL Redirect is a Docker Container with graphical interface, which allows users to wake up their services.
4-
Integrates with all of the WoL Containers.
5-
6-
## Installation
7-
8-
Get the latest `docker-compose.yaml` file:
9-
10-
```yaml
11-
---
12-
services:
13-
myservice:
14-
container_name: myservice
15-
```
16-
17-
```bash
18-
docker compose up -d
19-
```
20-
21-
## Usage
22-
23-
Use a Reverse Proxy to redirect you from a service `https://jellyfin.mydomain.com` on another machine to `https://wol-red.mydomain.com`,
24-
WoL Redirect will use the `config.json` to get the host of the requested service.
25-
26-
```json
1+
# WoL Redirect
2+
3+
WoL Redirect is a Docker Container with graphical interface, which allows users to wake up their services.
4+
Integrates with all of the WoL Containers.
5+
6+
_Well, except for meteorite_
7+
8+
## Installation
9+
10+
Get the latest `docker-compose.yaml` file:
11+
12+
```yaml
13+
---
14+
services:
15+
wol:
16+
container_name: wol-client
17+
image: ghcr.io/codeshelldev/wol-client:latest
18+
restart: unless-stopped
19+
security_opt:
20+
- label=disable
21+
networks:
22+
network:
23+
aliases:
24+
- wol-client
25+
26+
wolred:
27+
container_name: wol-redirect
28+
image: ghcr.io/codeshelldev/wol-redirect:latest
29+
networks:
30+
- network
31+
ports:
32+
- "80:80"
33+
volumes:
34+
- ./config:/app/config:ro
35+
depends_on:
36+
- wol
37+
restart: unless-stopped
38+
39+
networks:
40+
network:
41+
```
42+
43+
```bash
44+
docker compose up -d
45+
```
46+
47+
### Reverse Proxy
48+
49+
In this example we'll be using traefik:
50+
51+
```yaml
52+
services:
53+
# ...
54+
wolred:
55+
container_name: wol-redirect
56+
image: ghcr.io/codeshelldev/wol-redirect:latest
57+
networks:
58+
- network
59+
- proxy
60+
labels:
61+
- traefik.enable=true
62+
- traefik.http.routers.wolred-https.rule=Host(`wol-redirect.mydomain.com`)
63+
- traefik.http.routers.wolred-https.entrypoints=websecure
64+
- traefik.http.routers.wolred-https.tls=true
65+
- traefik.http.routers.wolred-https.tls.certresolver=cloudflare
66+
- traefik.http.routers.wolred-https.service=wolred-svc
67+
68+
- traefik.http.services.wolred-svc.loadbalancer.server.port=80
69+
- traefik.docker.network=proxy
70+
volumes:
71+
- ./config:/app/config:ro
72+
depends_on:
73+
- wol
74+
restart: unless-stopped
75+
76+
networks:
77+
network:
78+
proxy:
79+
external: true
80+
```
81+
82+
Let's use jellyfin for example
83+
84+
```yaml
85+
http:
86+
routers:
87+
jellyfin:
88+
entrypoints:
89+
- "websecure"
90+
rule: "Host(`jellyfin.mydomain.com`)"
91+
tls:
92+
certResolver: cloudflare
93+
service: jellyfin-failover
94+
95+
services:
96+
jellyfin-failover:
97+
failover:
98+
service: jellyfin-svc
99+
fallback: wolred-svc # the name of your wol redirect service
100+
jellyfin-svc:
101+
loadBalancer:
102+
serversTransport: transport
103+
healthCheck:
104+
# host your jellyfin instance with an additional port 12345, which is used for healthchecks
105+
# change this to port 80 / 443 if you are not hosting the docker host on top of PVE with wol-pve
106+
port: 12345
107+
interval: 5s
108+
timeout: 3s
109+
scheme: http
110+
servers:
111+
- url: "https://jellyfin.server2.mydomain.com" # actual url of jellyfin
112+
113+
serversTransports:
114+
transport:
115+
insecureSkipVerify: true
116+
```
117+
118+
## Usage
119+
120+
Use a Reverse Proxy to redirect you from a service `https://jellyfin.mydomain.com` on another machine to `https://wol-red.mydomain.com`,
121+
WoL Redirect will use the `config.json` to get the host of the requested service.
122+
123+
```json
27124
{
28125
"hosts": {
29126
"pve": {
@@ -57,10 +154,10 @@ WoL Redirect will use the `config.json` to get the host of the requested service
57154
"*.mydomain.com": "pve-lxc"
58155
}
59156
}
60-
```
61-
62-
## Contributing
63-
64-
## License
65-
66-
[MIT](https://choosealicense.com/licenses/mit/)
157+
```
158+
159+
## Contributing
160+
161+
## License
162+
163+
[MIT](https://choosealicense.com/licenses/mit/)

0 commit comments

Comments
 (0)