blackcandy-org/blackcandy: একটি স্ব-হোস্ট করা সঙ্গীত স্ট্রিমিং সার্ভার

blackcandy-org/blackcandy: একটি স্ব-হোস্ট করা সঙ্গীত স্ট্রিমিং সার্ভার


কালো ক্যান্ডি লোগো

সি.আই
কভারেজ স্থিতি
রুবি স্টাইল গাইড
ডকার টানে

স্ক্রিনশট

ব্ল্যাক ক্যান্ডি একটি স্ব-হোস্ট করা সঙ্গীত স্ট্রিমিং সার্ভার, আপনার ব্যক্তিগত সঙ্গীত কেন্দ্র।

পরিদর্শন করুন https://demo.blackcandy.org এবং ডেমো ব্যবহারকারী ব্যবহার করুন (ইমেল: [email protected]পাসওয়ার্ড: foobar) লগ ইন করতে। এবং নির্দ্বিধায় চেষ্টা করুন।

দ্রষ্টব্য

এই ডেমো ব্যবহারকারীর প্রশাসকের বিশেষাধিকার নেই। সুতরাং আপনি ব্ল্যাক ক্যান্ডিতে সমস্ত বৈশিষ্ট্য অনুভব করতে পারবেন না। এবং ডেমো সব সঙ্গীত থেকে হয় বিনামূল্যে সঙ্গীত সংরক্ষণাগার. আপনি তাদের চেক করতে পারেন লাইসেন্স.

ব্ল্যাক ক্যান্ডি সহজেই ইনস্টল করতে ডকার ইমেজ ব্যবহার করে। আপনি এভাবে ব্ল্যাক ক্যান্ডি চালাতে পারেন।

docker run -p 3000:3000 ghcr.io/blackcandy-org/blackcandy:latest 

# Or pull from Docker Hub.
docker run -p 3000:3000 blackcandy/blackcandy:latest 

এতটুকুই। এখন, আপনি উভয় অ্যাক্সেস করতে পারেন http://localhost:3000 বা http://host-ip:3000 একটি ব্রাউজারে, এবং লগ ইন করতে প্রাথমিক অ্যাডমিন ব্যবহারকারী ব্যবহার করুন (ইমেল: [email protected]পাসওয়ার্ড: foobar)।

গুরুত্বপূর্ণ

আপনি যদি একটি বড় সংস্করণে আপগ্রেড করেন, আপগ্রেড করার আগে আপনাকে আপগ্রেড গাইডটি সাবধানে পড়তে হবে। কারণ একটি প্রধান সংস্করণে কিছু ব্রেকিং পরিবর্তন আছে।

  • দেখুন V3 আপগ্রেড V2 রিলিজ থেকে আপগ্রেড করার জন্য।
  • দেখুন এজ আপগ্রেড এজ রিলিজ থেকে সর্বশেষ স্থিতিশীল রিলিজে আপগ্রেড করার জন্য।

আপগ্রেড ব্ল্যাক ক্যান্ডি রিমোট থেকে নতুন ইমেজ টানছে। তারপর একটি পুরানো পাত্র সরান এবং একটি নতুন একটি তৈরি করুন।

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 

ডকার কম্পোজের সাথে, আপনি কালো ক্যান্ডিকে এইভাবে আপগ্রেড করতে পারেন:

docker pull ghcr.io/blackcandy-org/blackcandy:latest
docker-compose down
docker-compose up

ব্ল্যাক ক্যান্ডি মোবাইল অ্যাপগুলি নিম্নলিখিত অ্যাপ স্টোরগুলিতে পাওয়া যায়:

অ্যাপ স্টোরে এটি পান
এটি এফ-ড্রয়েডে পান

অ্যান্ড্রয়েড অ্যাপের জন্য, আপনি এখান থেকে APK ডাউনলোড করতে পারেন গিটহাব রিলিজ

কালো ক্যান্ডি 3000 পোর্ট রপ্তানি করে। আপনি হোস্ট থেকে এটি অ্যাক্সেস করতে সক্ষম হতে চান, আপনি ব্যবহার করতে পারেন -p পোর্ট ম্যাপ করার বিকল্প।

docker run -p 3000:3000 ghcr.io/blackcandy-org/blackcandy:latest

আপনি হোস্ট থেকে কন্টেইনার এবং ব্যবহারে মিডিয়া ফাইলগুলি মাউন্ট করতে পারেন MEDIA_PATH কালো ক্যান্ডির জন্য মিডিয়া পাথ সেট করতে পরিবেশ পরিবর্তনশীল।

docker run -v /media_data:/media_data -e MEDIA_PATH=/media_data ghcr.io/blackcandy-org/blackcandy:latest   

ডাটাবেস হিসাবে PostgreSQL ব্যবহার করুন

কালো ক্যান্ডি ডিফল্টরূপে ডাটাবেস হিসাবে SQLite ব্যবহার করে। কারণ SQLite ইনস্টলেশন প্রক্রিয়া সহজ করতে পারে, এবং এটি স্ব-হোস্টেড ছোট সার্ভারের জন্য একটি আদর্শ পছন্দ। আপনি যদি মনে করেন যে SQLite যথেষ্ট নয়, অথবা আপনি Black Candy হোস্ট করতে হিরোকু-এর মতো কিছু ক্লাউড পরিষেবা ব্যবহার করছেন, তাহলে আপনি PostgreSQL ডাটাবেস হিসেবেও ব্যবহার করতে পারেন।

docker run -e DB_ADAPTER=postgresql -e DB_URL=postgresql://yourdatabaseurl ghcr.io/blackcandy-org/blackcandy:latest 

ব্ল্যাক ক্যান্ডিতে থাকা সমস্ত ডেটা সংরক্ষণ করা হয় /app/storageতাই আপনি এই ডিরেক্টরিটি মাউন্ট করতে পারেন ডেটা ধরে রাখতে হোস্ট করতে।

mkdir storage_data

docker run -v ./storage_data:/app/storage ghcr.io/blackcandy-org/blackcandy:latest 

ব্ল্যাক ক্যান্ডি ক্লায়েন্টের কাছে অডিও ফাইল বিতরণ করতে Nginx ব্যবহার সমর্থন করে। এটি ব্ল্যাক ক্যান্ডি ব্যাকএন্ড দ্বারা পরিচালিত হওয়ার চেয়ে আরও কার্যকর উপায়। এবং কালো ক্যান্ডি ডকার ইমেজ জন্য প্রস্তুত nginx-প্রক্সিযার মানে আপনি সহজেই কালো ক্যান্ডির জন্য একটি Nginx প্রক্সি সেট আপ করতে পারেন।

আপনি সেই পরিষেবাগুলি সেট আপ করতে ডকার-কম্পোজ ব্যবহার করতে পারেন। docker-compose.yml ফাইলটি এইরকম দেখাচ্ছে:

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 https://raw.githubusercontent.com/blackcandy-org/blackcandy/v3.0.0/config/nginx/sendfile.conf > blackcandy.local

docker-compose up

কালো ক্যান্ডি লগ STDOUT ডিফল্টরূপে সুতরাং আপনি যদি লগ নিয়ন্ত্রণ করতে চান, ডকার ইতিমধ্যেই কন্টেইনারে লগ পরিচালনা করার জন্য অনেকগুলি বিকল্প সমর্থন করে। দেখুন: https://docs.docker.com/config/containers/logging/configure/.

নাম ডিফল্ট বর্ণনা
DB_URL PostgreSQL ডাটাবেসের URL। যদি আপনি PostgreSQL ডাটাবেস হিসাবে ব্যবহার করেন তবে আপনাকে অবশ্যই এই পরিবেশ পরিবর্তনশীল সেট করতে হবে।
মিডিয়া_পথ আপনি ব্ল্যাক ক্যান্ডির জন্য মিডিয়া পাথ সেট করতে এই পরিবেশ পরিবর্তনশীল ব্যবহার করতে পারেন, অন্যথায় আপনি সেটিংস পৃষ্ঠায় মিডিয়া পাথ সেট করতে পারেন।
DB_ADAPTER “sqlite” দুটি অ্যাডাপ্টার সমর্থিত আছে, “sqlite” এবং “postgresql”।
NGINX_SENDFILE মিথ্যা Nginx sendfile সক্রিয় করা হবে কিনা।
SECRET_KEY_BASE যখন SECRET_KEY_BASE এনভায়রনমেন্ট ভেরিয়েবল সেট করা না থাকে, ব্ল্যাক ক্যান্ডি প্রতিবার সার্ভিস শুরু করার সময় SECRET_KEY_BASE এনভায়রনমেন্ট ভেরিয়েবল তৈরি করবে। এটি পুরানো সেশনগুলিকে অবৈধ করে দেবে, আপনি এটি এড়াতে ডকার পরিষেবাতে আপনার নিজস্ব SECRET_KEY_BASE পরিবেশ পরিবর্তনশীল সেট করতে পারেন।
FORCE_SSL মিথ্যা SSL এর মাধ্যমে অ্যাপে সমস্ত অ্যাক্সেস জোর করে।
DEMO_MODE মিথ্যা ডেমো মোড সক্ষম করতে হবে কিনা, যখন ডেমো মোড চালু থাকে, সমস্ত ব্যবহারকারী প্রশাসকের বিশেষাধিকারগুলি অ্যাক্সেস করতে পারে না, এমনকি ব্যবহারকারী প্রশাসকও। এবং ব্যবহারকারীরা তাদের প্রোফাইল পরিবর্তন করতে পারবেন না।

মাস্টার ব্রাঞ্চে ব্ল্যাক ক্যান্ডি বেসের প্রান্ত সংস্করণ, যার মানে এটি স্থিতিশীল নয়, আপনি ডেটা ক্ষতি বা অন্যান্য সমস্যার সম্মুখীন হতে পারেন। যাইহোক, আমি একটি প্রান্ত সংস্করণ ব্যবহার করে সাধারণ ব্যবহারকারীর সুপারিশ করি না। তবে আপনি যদি একজন বিকাশকারী হন যিনি ব্ল্যাক ক্যান্ডি পরীক্ষা করতে বা অবদান রাখতে চান তবে আপনি প্রান্ত সংস্করণটি ব্যবহার করতে পারেন।

docker pull ghcr.io/blackcandy-org/blackcandy:edge
  • রুবি 3.3
  • Node.js 20
  • libvips
  • FFmpeg

নিশ্চিত করুন যে আপনি সেই সমস্ত নির্ভরতা ইনস্টল করেছেন।

জাভাস্ক্রিপ্ট নির্ভরতা ইনস্টল করুন

rails db:prepare
rails db:seed

আপনি সবকিছু সেট আপ করার পরে, এখন আপনি চালাতে পারেন ./bin/dev আপনার বিকাশের জন্য প্রয়োজনীয় সমস্ত পরিষেবা শুরু করতে। তারপর ভিজিট করুন http://localhost:3000 লগ ইন করতে প্রাথমিক অ্যাডমিন ব্যবহারকারী ব্যবহার করুন (ইমেল: [email protected]পাসওয়ার্ড: foobar)।

# Running all test
$ rails test:all 

# Running lint
$ rails lint:all

কালো ক্যান্ডি সমর্থন Discogs API থেকে শিল্পী এবং অ্যালবাম ছবি পান। আপনি Discogs থেকে একটি API টোকেন তৈরি করতে পারেন এবং এটি সক্ষম করতে সেটিংস পৃষ্ঠায় Discogs টোকেন সেট করতে পারেন।

এই প্রকল্পটি দ্বারা সমর্থিত:




Source link