blob: 29746e8e5d96e90d1efae72601a9aa80e5fe1792 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
## Using Docker
The fastest and recommended way to get your Homer instance up and running is
with Docker. The Docker image comes with a web server built-in so that all you
need to worry about is your config file.
Internally, the Docker image looks for the assets in the `/www/assets` directory
so you can bind a volume from your host machine to that directory in order to
modify and persist the configuration files. The web server serves the dashboard
on port 8080, but using a port binding will let you expose that to whatever
external port you like.
### docker
To launch container:
```sh
docker run -d \
-p 8080:8080 \
-v </your/local/assets>:/www/assets \
--restart=always \
b4bz/homer:latest
```
Use `UID` and/or `GID` env var to change the assets owner:
```sh
docker run -d \
-p 8080:8080 \
-v </your/local/assets>:/www/assets \
-e "UID=1000" -e "GID=1000" \
--restart=always \
b4bz/homer:latest
```
### docker-compose
It is recommended to use docker-compose to manage your Docker containers, and
below you can find a simple compose yaml file. Copy the contents into a
`docker-compose.yaml` and modify the volume binding to your desired directory to
get started:
```yaml
version: '3.3'
services:
homer:
restart: always
volumes:
- /your/local/assets:/www/assets
ports:
- 8080:8080
image: b4bz/homer
```
To launch container:
```sh
cd /path/to/docker-compose.yml
docker-compose up -d
```
Use `UID` and/or `GID` env var to change the assets owner:
```yaml
version: '3.3'
services:
homer:
restart: always
volumes:
- /your/local/assets:/www/assets
ports:
- 8080:8080
environment:
- UID=1000
- GID=1000
image: b4bz/homer
```
## Shipping your own web server
### Prebuilt release tarball
Download and extract the latest release (`homer.zip`) from the [release page](https://github.com/bastienwirtz/homer/releases), rename the `assets/config.yml.dist` file to `assets/config.yml`, and put it behind a web server.
```sh
wget https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip
unzip homer.zip
cd homer
cp assets/config.yml.dist assets/config.yml
npx serve # or python -m http.server 8010 or apache, nginx ...
```
### Building from source
```sh
# Using yarn (recommended)
yarn install
yarn build
# **OR** Using npm
npm install
npm run build
```
Then your dashboard is ready to use in the `/dist` directory.
|