polish readme and add nginx and systemd examples

also move examples into separate subdir to keep it tidy
This commit is contained in:
milaq 2018-11-06 01:00:53 +01:00
parent 61d584c8be
commit f983d2500d
4 changed files with 38 additions and 4 deletions

View file

@ -1,3 +1,5 @@
<img src="https://image.ibb.co/iBY6hq/yamaha.png" width="600">
# YCast # YCast
YCast is a self hosted replacement for the vTuner internet radio service which some Yamaha AVRs use. YCast is a self hosted replacement for the vTuner internet radio service which some Yamaha AVRs use.
@ -46,7 +48,7 @@ Category two name:
Fourth awesome station name: fourth.awesome/station/URL Fourth awesome station name: fourth.awesome/station/URL
``` ```
You can also have a look at the provided [example](stations.yml.example) to better understand the configuration. You can also have a look at the provided [example](examples/stations.yml.example) to better understand the configuration.
## Web server configuration ## Web server configuration
@ -65,6 +67,9 @@ You need to redirect the following URLs from your webserver to YCast (listening
__Attention__: Do not rewrite the request transparently. YCast expects the complete URL (i.e. including `/ycast/`). __Attention__: Do not rewrite the request transparently. YCast expects the complete URL (i.e. including `/ycast/`).
In case you are using (or plan on using) Nginx to proxy requests, have a look at [this example](examples/nginx-ycast.conf.example).
This can be used together with [this systemd service example](examples/ycast.service.example) for a fully functional deployment.
## Firewall rules ## Firewall rules
* The server running YCast does __not__ need internet access * The server running YCast does __not__ need internet access
@ -76,6 +81,5 @@ __Attention__: Do not rewrite the request transparently. YCast expects the compl
YCast was a quick and dirty project to lay the foundation for having a self hosted vTuner emulation. YCast was a quick and dirty project to lay the foundation for having a self hosted vTuner emulation.
It is a barebone service at the moment. It provides your AVR with the basic info it needs to play internet radio stations. It is a barebone service at the moment. It provides your AVR with the basic info it needs to play internet radio stations.
Maybe this will change in the future. Maybe this will change in the future, maybe not.
But for now just station names and URLs. No web-based management interface, no coverart, no fancy stuff. For now just station names and URLs; no web-based management interface, no coverart, no cute kittens, no fancy stuff.

View file

@ -0,0 +1,18 @@
server {
listen 80;
server_name radioyamaha.vtuner.com;
access_log /var/log/nginx/ycast_access.log;
error_log /var/log/nginx/ycast_error.log;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8010;
}
}

View file

@ -0,0 +1,12 @@
[Unit]
Description=YCast internet radio service
After=network.target
[Service]
Type=simple
User=ycast
Group=ycast
ExecStart=/opt/ycast/ycast.py -l 127.0.0.1 -p 8010
[Install]
WantedBy=multi-user.target