Arr for the Media
This is yaml file for installing sonarr, radarr, lidarr, homarr, jellyseerr prowlarr, flaresolverr, jellyfin, watchtower, transmission and filebrowser using alpine linux and docker compose.
Copy docker script mentioned in the script
It is using https://tteck.github.io/Proxmox/
starter for container creation. The Guy who made did an amazing work.
After this Go inside the container you created and login with root and whatever password you saved while installation.
After successful login check IP address and keep a note of it or if you have DNS configured you can use the hostname of the machine.
1 ip a
Lets create folders first
1
mkdir -p /data/media/tv /data/media/music /data/media/movies /data/torrents/tv /data/torrents/music /data/torrents/movies arr
How to remove folder and all its content if you messed up creating folder or wanted to use custom folder –edit accordingly.
1 rm -r /data
Permissions
This you can keep as 755 or 777.
1
2
chown -R $USER:$USER /data
chmod -R 777 /data
Creation
Now go into “arr” folder and create a docker-compose.yml file.
1
2
cd arr
nano docker-compose.yml
Paste this content into docker-compose.yml and press –ctrl+x– and press –Enter– to save it.
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
---
services:
sonarr:
container_name: sonarr
image: linuxserver/sonarr:latest
restart: unless-stopped
ports:
- 8989:8989
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./sonarr:/config
- /data:/data
radarr:
container_name: radarr
image: linuxserver/radarr:latest
restart: unless-stopped
ports:
- 7878:7878
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./radarr:/config
- /data:/data
lidarr:
container_name: lidarr
image: linuxserver/lidarr:latest
restart: unless-stopped
ports:
- 8686:8686
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./lidarr:/config
- /data:/data
prowlarr:
container_name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
restart: unless-stopped
ports:
- 9696:9696
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./prowlarr:/config
jellyseerr:
container_name: jellyseerr
image: fallenbagel/jellyseerr:latest
restart: unless-stopped
ports:
- 5055:5055
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./jellyseerr:/app/config
flaresolverr:
container_name: flaresolverr
image: ghcr.io/flaresolverr/flaresolverr:latest
restart: unless-stopped
ports:
- 8191:8191
environment:
- LOG_LEVEL=${LOG_LEVEL:-info}
- LOG_HTML=${LOG_HTML:-false}
- CAPTCHA_SOLVER=${CAPTCHA_SOLVER:-none}
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./flaresolverr:/config
jellyfin:
container_name: jellyfin
image: linuxserver/jellyfin:latest
restart: unless-stopped
ports:
- 8096:8096
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./jellyfin:/config
- /data/media:/data/media
transmission:
container_name: transmission
image: linuxserver/transmission:latest
restart: unless-stopped
ports:
- 9091:9091
- 51413:51413
- 51413:51413/udp
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- ./transmission:/config
- /data/torrents:/data/torrents:rw
ytdl_material:
environment:
ytdl_mongodb_connection_string: 'mongodb://ytdl-mongo-db:27017'
ytdl_use_local_db: 'false'
write_ytdl_config: 'true'
restart: unless-stopped
depends_on:
- ytdl-mongo-db
volumes:
- ./ytdl/appdata:/app/appdata
- /data/media/ytdl/audio:/app/audio
- /data/media/ytdl/video:/app/video
- /data/media/ytdl/subscriptions:/app/subscriptions
- /data/media/ytdl/users:/app/users
ports:
- 8998:17442
image: tzahi12345/youtubedl-material:latest
ytdl-mongo-db:
image: mongo:4
logging:
driver: none
container_name: mongo-db
restart: unless-stopped
volumes:
- ./ytdl/db/:/data/db
filebrowser:
container_name: filebrowser
image: filebrowser/filebrowser:latest
restart: unless-stopped
ports:
- 8080:80
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
- FB_NOAUTH=true
volumes:
- ./filebrowser:/config
- /:/srv
homarr:
container_name: homarr
image: ghcr.io/ajnart/homarr:latest
restart: unless-stopped
ports:
- 80:7575
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./homarr/configs:/app/data/configs
- ./homarr/icons:/app/public/icons
- ./homarr/data:/data
watchtower:
container_name: watchtower
image: containrrr/watchtower
volumes:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Stockholm
- WATCHTOWER_CLEANUP=true
- WATCHTOWER_POLL_INTERVAL=604800
Execution
docker compose up -d
Now let it rip and download everything and then go to your ip address and start configuring the services on Homarr dashboard.
filebrowser = IP:8080
flaresolverr = IP:8191
jellyseerr = IP:5055
jellyfin = IP:8096
prowlarr = IP:9696
lidarr = IP:8686
radarr = IP:7878
sonarr = IP:8989
transmission = IP:9091