El desarrollador Senan Kelly, ha creado Gonic, un servidor ultra rápido y ligero (En mi Raspberry Pi consume solo 12-19 Mb de ram) que mejora todavía más la experiencia en dispositivos como una Raspberry Pi.
Las características de este servidor son:
Que no tiene: Tenemos que tener en cuenta un pequeño detalle, para que aparezcan las portadas de nuestras discos en los clientes, tenemos que dejar en la carpeta donde tenemos los archivos mp3, flac,… un archivo jpg o png con el nombre folder. Ejemplo. folder.jpg. Gonic entenderá que es una portada y la enviará al cliente para que sea visualizada.
De momento no integra el poder poner una estrella o puntuación a una canción.
Por lo demás, es un servidor alucinante y que sincroniza a la perfección y de un modo muy rápido.
La imagen, tan solo tiene 27.68 MB
docker create \
--name=gonic \
-p 88:80 \
-v $HOME/media/musica:/music:ro \
-v $HOME/docker/gonic/data:/data \
-v $HOME/docker/gonic/cache:/cache \
-v $HOME/docker/gonic/podcasts:/podcasts \
ugeek/gonic:arm
version: "3"
services:
gonic_web:
image: ugeek/gonic:arm
container_name: gonic
ports:
- 88:80
volumes:
- $HOME/docker/gonic/musica:/music:ro
- $HOME/docker/gonic/podcasts:/podcasts
- $HOME/docker/gonic/data:/data
- $HOME/docker/gonic/cache:/cache
docker create \
--name=gonic \
-p 88:80 \
-v $HOME/media/musica:/music:ro \
-v $HOME/docker/gonic/data:/data \
-v $HOME/docker/gonic/cache:/cache \
-v $HOME/docker/gonic/podcasts:/podcasts \
sentriz/gonic:latest
En el montaje del docker, del paso anterior, he tomado de ejemplo el puerto 88. Para acceder a la página de administración, tendríamos que conectarnos a la ip de nuestro servidor puerto 88. http://ip:88
Los archivos M3U8 son listas de reproducción como los m3u, con la diferencia que los archivos m3u8 utilizan el estándar de codificación de caracteres UTF-8. Esto significa que las listas pueden contener nombres escritos en distintos idiomas y caracteres.
El archivo de texto sin formato contiene información sobre la ubicación de las canciones en la lista de reproducción.
Un ejemplo de archivo m3u8 sería:
/music/The Rolling Stones/The Rolling Stones - (I Can't Get No) Satisfaction.mp3
/music/The Rolling Stones/The Rolling Stones - Sympathy for the Devil.mp3
/music/./track
Para listar toda la música que tenemos, nos situariamos en la raíz del docker y ejecutaríamos el comando find:
find /music/ > all_music.list
Entramos dentro del contenedor
docker exec -it gonic sh
Ahora corremos find para listar todas las canciones de un directorio. En este ejemplo voy listar todas las canciones mp3 del directorio The Rolling Stones.
find /music/"The Rolling Stones" | grep mp3
Voy a crear mi lista en formato m3u8 de las canciones en formato flac de este directorio
find /music/"The Rolling Stones" | grep flac > lista.m3u8
Accedemos al interior del docker
docker exec -it gonic sh
Ejecutamos para ver la ayuda
gonic -h
Usage of gonic:
-cache-path string
path to cache (default "/tmp/gonic_cache")
-config-path string
path to config (optional)
-db-path string
path to database (optional) (default "gonic.db")
-listen-addr string
listen address (optional) (default "0.0.0.0:4747")
-music-path string
path to music
-proxy-prefix string
url path prefix to use if behind proxy. eg '/gonic' (optional)
-scan-interval int
interval (in minutes) to automatically scan music (optional)
-version
show gonic version
Con los comandos de terminal, podemos hacer que se hagan sincronizaciones de nuestra biblioteca añadiendo cada cuantos minutos queremos que se produzca.
Para más información, os recomiendo visitar el repositorio del proyecto.
La ligereza de Gonic, bajos recursos y la creación de listados, hace que este servidor sea ideal, sobretodo para servidores como una Raspberry Pi.
Publicado por Angel el Wednesday 06 May del 2020 y actualizado el Thursday 04 February del 2021
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.