File tree Expand file tree Collapse file tree 16 files changed +254
-0
lines changed Expand file tree Collapse file tree 16 files changed +254
-0
lines changed Original file line number Diff line number Diff line change @@ -51,6 +51,7 @@ The following services are available:
51
51
* low-latency voice chat: [ mumble] ( https://www.mumble.com/ )
52
52
* home automation: [ homeassistant] ( https://www.home-assistant.io/ )
53
53
with [ mosquitto MQTT] ( https://mosquitto.org/ )
54
+ * service dashboard: [ homepage] ( https://gethomepage.dev/ )
54
55
55
56
56
57
Original file line number Diff line number Diff line change @@ -22,6 +22,7 @@ Vagrant.configure("2") do |config|
22
22
main . vm . network "private_network" , ip : "192.168.10.6"
23
23
#main.vm.network "forwarded_port", guest: 53, host: 53 # adguard
24
24
main . vm . network "forwarded_port" , guest : 3000 , host : 3000 # adguard
25
+ main . vm . network "forwarded_port" , guest : 4000 , host : 4000 # homepage
25
26
main . vm . network "forwarded_port" , guest : 80 , host : 80 # caddy
26
27
main . vm . network "forwarded_port" , guest : 443 , host : 443 # caddy
27
28
main . vm . network "forwarded_port" , guest : 8123 , host : 8123 # homeassistant
Original file line number Diff line number Diff line change 173
173
- role : jellyfin
174
174
- role : jellyseerr
175
175
- role : lyrion
176
+
177
+ - role : homepage
178
+ vars :
179
+ homepage_adguard_user : " {{ main_user }}"
180
+ homepage_adguard_password : " {{ main_password }}"
Original file line number Diff line number Diff line change @@ -23,6 +23,10 @@ gallery.{{ domain }} gallery.{{ domain2 }} {
23
23
file_server
24
24
}
25
25
26
+ dashboard .{{ domain }} dashboard.{{ domain2 }} {
27
+ reverse_proxy homepage:3000
28
+ }
29
+
26
30
home .{{ domain }} home.{{ domain2 }} {
27
31
reverse_proxy homeassistant:8123 {
28
32
header_up X-Real-IP {remote_host}
Original file line number Diff line number Diff line change @@ -18,10 +18,12 @@ services:
18
18
- /share/web/wiki:/srv/wiki
19
19
networks :
20
20
- bitwarden_net
21
+ - homepage_net
21
22
- homeassistant_net
22
23
- jellyfin_net
23
24
24
25
networks :
25
26
bitwarden_net :
27
+ homepage_net :
26
28
homeassistant_net :
27
29
jellyfin_net :
Original file line number Diff line number Diff line change
1
+ ---
2
+
3
+ homepage_service_name : " homepage"
4
+ homepage_app_folder : " /etc/{{ homepage_service_name }}"
5
+ homepage_config_folder : " {{ homepage_app_folder }}/config"
6
+
7
+ homepage_adguard_user : " "
8
+ homepage_adguard_password : " "
Original file line number Diff line number Diff line change
1
+ ---
2
+
3
+ - name : " Create app folder: {{ homepage_app_folder }}"
4
+ become : true
5
+ ansible.builtin.file :
6
+ path : " {{ homepage_app_folder }}"
7
+ state : directory
8
+ mode : " 644"
9
+
10
+ - name : " Create config folder: {{ homepage_config_folder }}"
11
+ become : true
12
+ ansible.builtin.file :
13
+ path : " {{ homepage_config_folder }}"
14
+ state : directory
15
+ mode : " 644"
16
+
17
+ - name : " Copy config files to {{ homepage_config_folder }}"
18
+ become : true
19
+ ansible.builtin.template :
20
+ src : " templates/{{ item }}"
21
+ dest : " {{ homepage_config_folder }}/"
22
+ mode : " u+rw"
23
+ with_items :
24
+ - " bookmarks.yaml"
25
+ - " docker.yaml"
26
+ - " services.yaml"
27
+ - " settings.yaml"
28
+ - " widgets.yaml"
29
+ register : config
30
+
31
+ - name : " Prepare environment file. Only if no file exist."
32
+ become : true
33
+ ansible.builtin.template :
34
+ src : " homepage.env"
35
+ dest : " {{ homepage_config_folder }}/"
36
+ mode : " u+rw"
37
+ force : false
38
+
39
+ - ansible.builtin.include_role :
40
+ name : docker-compose-service
41
+ vars :
42
+ service_name : " {{ homepage_service_name }}"
43
+ force_restart : " {{ config.changed }}"
Original file line number Diff line number Diff line change
1
+ ---
2
+ - Development :
3
+ - My Github Profile :
4
+ - icon : github-light.svg
5
+ href : https://github.com/langchr86
6
+ description : github.com/langchr86
7
+ - This setup is managed by Ansible :
8
+ - icon : github-light.svg
9
+ href : https://github.com/langchr86/server-config
10
+ description : github.com/langchr86/server-config
11
+
12
+ - Wiki :
13
+ - Lang Wiki :
14
+ - icon : si-markdown-#eeeeee
15
+ href : https://wiki.langchr86.ch
16
+
17
+ - Local Access :
18
+ - Vaultwarden Admin :
19
+ - icon : bitwarden.svg
20
+ href : http://{{ ip_address_main }}:8088/admin
21
+ description : {{ ip_address_main }}:8088/admin
22
+ - Home Assistant :
23
+ - icon : home-assistant.svg
24
+ href : http://{{ ip_address_main }}:8123
25
+ description : {{ ip_address_main }}:8123
26
+ - Jellyfin :
27
+ - icon : jellyfin.svg
28
+ href : http://{{ ip_address_main }}:8096
29
+ description : {{ ip_address_main }}:8096
Original file line number Diff line number Diff line change
1
+ ---
2
+ version : " 3.5"
3
+ services :
4
+ homepage :
5
+ container_name : " homepage"
6
+ image : ghcr.io/gethomepage/homepage:v0.10.9
7
+ ports :
8
+ - " 4000:3000"
9
+ env_file : " {{ homepage_config_folder }}/homepage.env"
10
+ volumes :
11
+ - {{ homepage_config_folder }}:/app/config:ro
12
+ - /share:/share:ro
13
+ - /var/run/docker.sock:/var/run/docker.sock:ro
14
+ networks :
15
+ - caddy_homepage_net
16
+ - caddy_jellyfin_net
17
+
18
+ networks :
19
+ caddy_homepage_net :
20
+ external : true
21
+ caddy_jellyfin_net :
22
+ external : true
Original file line number Diff line number Diff line change
1
+ ---
2
+ local-docker :
3
+ socket : /var/run/docker.sock
Original file line number Diff line number Diff line change
1
+ HOMEPAGE_VAR_JELLYFIN_API_KEY = " "
2
+
3
+ HOMEPAGE_VAR_ADGUARD_USER = " {{ homepage_adguard_user }}"
4
+ HOMEPAGE_VAR_ADGUARD_PASSWORD = " {{ homepage_adguard_password }}"
Original file line number Diff line number Diff line change
1
+ ---
2
+ - Media :
3
+ - Jellyfin :
4
+ icon : jellyfin.svg
5
+ href : https://media.{{ domain }}
6
+ server : local-docker
7
+ container : jellyfin
8
+ widget :
9
+ type : jellyfin
10
+ url : http://{{ ip_address_main }}:8096
11
+ key : {{ '{{' }}HOMEPAGE_VAR_JELLYFIN_API_KEY{{ '}}' }}
12
+ enableBlocks : true
13
+ enableNowPlaying : false
14
+ - Jellyseerr :
15
+ icon : jellyseerr.svg
16
+ href : https://mediarequest.{{ domain }}
17
+ server : local-docker
18
+ container : jellyseerr
19
+ - Lyrion :
20
+ icon : lyrion.svg
21
+ href : http://{{ ip_address_main }}:9000/
22
+ server : local-docker
23
+ container : lyrion
24
+
25
+ - Network :
26
+ - AdGuard :
27
+ icon : adguard-home.svg
28
+ href : http://{{ ip_address_main }}:3000/
29
+ server : local-docker
30
+ container : adguard
31
+ widget :
32
+ type : adguard
33
+ url : http://{{ ip_address_main }}:3000/
34
+ username : {{ '{{' }}HOMEPAGE_VAR_ADGUARD_USER{{ '}}' }}
35
+ password : {{ '{{' }}HOMEPAGE_VAR_ADGUARD_PASSWORD{{ '}}' }}
36
+ - Caddy :
37
+ icon : caddy.svg
38
+ server : local-docker
39
+ container : caddy
40
+ - DDClient :
41
+ icon : ddclient.svg
42
+ server : local-docker
43
+ container : ddclient
44
+
45
+ - Home :
46
+ - Home Assistant :
47
+ icon : home-assistant.svg
48
+ href : https://home.{{ domain }}
49
+ server : local-docker
50
+ container : homeassistant
51
+ - MQTT-Broker :
52
+ icon : mqtt.svg
53
+ server : local-docker
54
+ container : mosquitto
55
+
56
+ - Downloads :
57
+ - JDownloader :
58
+ icon : jdownloader2.png
59
+ href : https://my.jdownloader.org
60
+ server : local-docker
61
+ container : jdownloader
62
+ - Transmission :
63
+ icon : si-transmission-#eeeeee
64
+ href : http://{{ ip_address_main }}:9091/
65
+ server : local-docker
66
+ container : transmission
67
+
68
+ - Admin :
69
+ - Bitwarden :
70
+ icon : bitwarden.svg
71
+ href : https://bitwarden.{{ domain }}
72
+ server : local-docker
73
+ container : bitwarden
74
+ - Mumble :
75
+ icon : mumble.svg
76
+ server : local-docker
77
+ container : mumble
Original file line number Diff line number Diff line change
1
+ ---
2
+ title : " {{ hostname_main }}"
3
+ theme : dark
4
+ color : neutral
5
+
6
+ base : " https://dashboard.{{ domain }}"
7
+
8
+ headerStyle : boxedWidgets
9
+
10
+ layout :
11
+ Media :
12
+ useEqualHeights : true
13
+ style : row
14
+ columns : 3
15
+ Network :
16
+ useEqualHeights : true
17
+ style : row
18
+ columns : 3
Original file line number Diff line number Diff line change
1
+ ---
2
+ - greeting :
3
+ text_size : 4xl
4
+ text : " {{ hostname_main }}"
5
+
6
+ - resources :
7
+ expanded : true
8
+ cpu : true
9
+ memory : true
10
+
11
+ - resources :
12
+ label : System Disk
13
+ expanded : true
14
+ disk : " /"
15
+
16
+ - resources :
17
+ label : Storage Disks
18
+ expanded : true
19
+ disk : " /share"
Original file line number Diff line number Diff line change
1
+ Homepage Dashboard
2
+ ========
3
+
4
+ Access tokens
5
+ -------------
6
+
7
+ Some services need to have an access token that can be used to receive status information to show on the dashboard.
8
+ The following services need to generate an access token which then needs to be included in the ` homepage.env ` .
9
+
10
+ * Jellyfin
11
+
12
+ The environment file is created initially and is not overwritten by later ansible executions.
13
+ After the file was completed we need to restart the container:
14
+
15
+ ~~~~~~
16
+ systemctl restart homepage
17
+ ~~~~~~
Original file line number Diff line number Diff line change 1
1
https://bitwarden.langchr86.ch
2
+ https://dashboard.langchr86.ch
2
3
https://fileshare.langchr86.ch/link.txt
3
4
https://gallery.langchr86.ch/gallery.html
4
5
https://home.langchr86.ch
You can’t perform that action at this time.
0 commit comments