Black Candy adalah server streaming musik yang dihosting sendiri, pusat musik pribadi Anda.
Silakan kunjungi dan gunakan pengguna demo (email: [email protected], kata sandi: foobar) untuk masuk. Dan jangan ragu untuk mencobanya.
Catatan
Pengguna demo ini tidak memiliki hak administrator. Jadi Anda tidak bisa merasakan semua fitur di Black Candy. Dan semua musik dalam demo berasal dari Arsip Musik Gratis. Anda dapat memeriksa lisensi mereka.
Black Candy menggunakan gambar buruh pelabuhan untuk menginstal dengan mudah. Anda dapat menjalankan Black Candy seperti ini.
docker run -p 3000:3000 ghcr.io/blackcandy-org/blackcandy:latest
# Or pull from Docker Hub.
docker run -p 3000:3000 blackcandy/blackcandy:latest
Itu saja. Sekarang, Anda dapat mengakses keduanya atau di browser, dan gunakan pengguna admin awal untuk login (email: [email protected], kata sandi: foobar).
Penting
Jika Anda meningkatkan ke versi utama, Anda perlu membaca panduan peningkatan dengan cermat sebelum melakukan peningkatan. Karena ada beberapa perubahan yang mengganggu pada versi mayor.
- Lihat Peningkatan V3 untuk peningkatan dari rilis V2.
- Lihat Edge Upgrade untuk peningkatan dari rilis edge ke rilis stabil terbaru.
Tingkatkan Black Candy dengan menarik gambar baru dari jarak jauh. Kemudian keluarkan wadah lama dan buat wadah baru.
docker pull ghcr.io/blackcandy-org/blackcandy:latest
docker stop <your_blackcandy_container>
docker rm <your_blackcandy_container>
docker run <OPTIONS> ghcr.io/blackcandy-org/blackcandy:latest
Dengan docker composer, Anda dapat mengupgrade Black Candy seperti ini:
docker pull ghcr.io/blackcandy-org/blackcandy:latest
docker-compose down
docker-compose up
Aplikasi seluler Black Candy tersedia di toko aplikasi berikut:
Untuk aplikasi Android, Anda juga dapat mengunduh APK dari GitHub Release
Black Candy mengekspor 3000 port. Jika Anda ingin dapat mengaksesnya dari host, Anda dapat menggunakan -p
pilihan untuk memetakan port.
docker run -p 3000:3000 ghcr.io/blackcandy-org/blackcandy:latest
Anda dapat memasang file media dari host ke container dan menggunakannya MEDIA_PATH
variabel lingkungan untuk mengatur jalur media untuk permen hitam.
docker run -v /media_data:/media_data -e MEDIA_PATH=/media_data ghcr.io/blackcandy-org/blackcandy:latest
Black Candy menggunakan SQLite sebagai database secara default. Karena SQLite dapat menyederhanakan proses instalasi, dan merupakan pilihan ideal untuk server kecil yang dihosting sendiri. Jika menurut Anda SQLite saja tidak cukup, atau Anda menggunakan layanan cloud seperti heroku untuk menghosting Black Candy, Anda juga dapat menggunakan PostgreSQL sebagai database.
docker run -e DB_ADAPTER=postgresql -e DB_URL=postgresql://yourdatabaseurl ghcr.io/blackcandy-org/blackcandy:latest
Semua data yang perlu disimpan di Black Candy disimpan di /app/storage
Jadi Anda dapat memasang direktori ini ke host untuk menyimpan data.
mkdir storage_data
docker run -v ./storage_data:/app/storage ghcr.io/blackcandy-org/blackcandy:latest
Black Candy mendukung penggunaan Nginx untuk mengirimkan file audio ke klien. Ini cara yang lebih efektif daripada yang ditangani oleh backend Black Candy. Dan image buruh pelabuhan Black Candy juga siap untuk nginx-proxy, yang berarti Anda dapat mengatur proxy Nginx untuk Black Candy dengan mudah.
Anda dapat menggunakan docker-compose untuk menyiapkan layanan tersebut. File docker-compose.yml terlihat seperti ini:
version: '3'
services:
nginx-proxy:
image: nginxproxy/nginx-proxy
ports:
- "80:80"
volumes:
- ./blackcandy.local:/etc/nginx/vhost.d/blackcandy.local:ro
- /var/run/docker.sock:/tmp/docker.sock:ro
- /media_data:/media_data # Keep the path of media files in container the same as blackcandy container.
app:
image: ghcr.io/blackcandy-org/blackcandy:latest
volumes:
- ./storage_data:/app/storage
- /media_data:/media_data
environment:
VIRTUAL_HOST: blackcandy.local
MEDIA_PATH: /media_data
NGINX_SENDFILE: "true" # Don't forget to set `NGINX_SENDFILE` environment variable to true to enable nginx sendfile.
# Get the default sendfile config for blackcandy. This file need to mount to nginx proxy container to add custom configuration for nginx.
curl > blackcandy.local
docker-compose up
Black Candy masuk ke STDOUT
secara default. Jadi jika ingin mengontrol log, Docker sudah mendukung banyak opsi untuk menangani log di container. Melihat: https://docs.docker.com/config/containers/logging/configure/.
Nama | Bawaan | Keterangan |
---|---|---|
DB_URL | URL basis data PostgreSQL. Anda harus mengatur variabel lingkungan ini jika Anda menggunakan PostgreSQL sebagai database. | |
MEDIA_PATH | Anda dapat menggunakan variabel lingkungan ini untuk mengatur jalur media untuk Black Candy, jika tidak, Anda dapat mengatur jalur media di halaman pengaturan. | |
DB_ADAPTER | “sqlite” | Ada dua adaptor yang didukung, “sqlite” dan “postgresql”. |
NGINX_SENDFILE | PALSU | Apakah mengaktifkan Nginx sendfile. |
RAHASIA_KEY_BASE | Ketika variabel lingkungan SECRET_KEY_BASE tidak disetel, Black Candy akan menghasilkan variabel lingkungan SECRET_KEY_BASE setiap kali layanan dimulai. Ini akan menyebabkan sesi lama tidak valid, Anda dapat mengatur variabel lingkungan SECRET_KEY_BASE Anda sendiri pada layanan buruh pelabuhan untuk menghindarinya. | |
KEKUATAN_SSL | PALSU | Paksa semua akses ke aplikasi melalui SSL. |
DEMO_MODE | PALSU | Apakah akan mengaktifkan mode demo, ketika mode demo aktif, semua pengguna tidak dapat mengakses hak istimewa administrator, bahkan pengguna adalah admin. Dan juga pengguna tidak dapat mengubah profilnya. |
Versi edge Black Candy didasarkan pada cabang master, yang berarti tidak stabil, Anda mungkin mengalami kehilangan data atau masalah lainnya. Namun, saya tidak menyarankan pengguna biasa menggunakan versi Edge. Namun jika Anda seorang developer yang ingin menguji atau berkontribusi pada Black Candy, Anda bisa menggunakan versi edge.
docker pull ghcr.io/blackcandy-org/blackcandy:edge
- rubi 3.3
- Node.js 20
- libvips
- FFmpeg
Pastikan Anda telah menginstal semua dependensi tersebut.
rails db:prepare
rails db:seed
Setelah Anda mengatur semuanya, sekarang Anda dapat menjalankannya ./bin/dev
untuk memulai semua layanan yang perlu Anda kembangkan. Kemudian kunjungi gunakan pengguna admin awal untuk login (email: [email protected], kata sandi: foobar).
# Running all test
$ rails test:all
# Running lint
$ rails lint:all
Dukungan Black Candy mendapatkan artis dan gambar album dari Discogs API. Anda dapat membuat token API dari Discogs dan mengatur token Discogs di halaman Pengaturan untuk mengaktifkannya.
Proyek ini didukung oleh: