Cách cài đặt AirSonic Media Server trên CentOS 8

theanh

Administrator
Nhân viên
AirSonic là máy chủ phát trực tuyến phương tiện miễn phí, mã nguồn mở và dựa trên web cho phép bạn truy cập nhạc của mình từ vị trí trung tâm. Airsonic tương thích với mọi định dạng tệp âm thanh/video và cũng có thể phát trực tuyến qua giao thức HyperText Transfer. Đây là trình phát trực tuyến phương tiện tự lưu trữ được viết bằng ngôn ngữ Java và có thể xử lý các bộ sưu tập nhạc rất lớn. Nó chạy trên hầu hết các hệ điều hành bao gồm Windows, Linux và Mac OS.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt máy chủ phát trực tuyến phương tiện AirSonic trên CentOS 8.

Điều kiện tiên quyết​

  • Máy chủ chạy CentOS 8 với RAM tối thiểu 2 GB.
  • Mật khẩu gốc được cấu hình trên máy chủ của bạn.

Bắt đầu​

Theo mặc định, SELinux được bật trong máy chủ CentOS 8. Vì vậy, trước tiên bạn cần phải vô hiệu hóa nó.

Bạn có thể thực hiện việc này bằng cách chỉnh sửa tệp /etc/selinux/config:
Mã:
nano /etc/selinux/config
Thực hiện các thay đổi sau:
Mã:
SELINUX=disabled
Lưu và đóng tệp. Sau đó, khởi động lại hệ thống của bạn để áp dụng các thay đổi.

Cài đặt Java​

AirSonic dựa trên Java nên bạn sẽ cần cài đặt Java vào hệ thống của mình. Bạn có thể cài đặt Java chỉ bằng cách chạy lệnh sau:
Mã:
dnf install java-1.8.0-openjdk-devel
Sau khi Java đã được cài đặt, bạn có thể xác minh phiên bản Java bằng lệnh sau:
Mã:
java -version
Bạn sẽ thấy đầu ra sau:
Mã:
openjdk version "1.8.0_232"Môi trường chạy thời gian OpenJDK (bản dựng 1.8.0_232-b09)Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 25.232-b09, chế độ hỗn hợp)

Cài đặt AirSonic​

Trước khi bắt đầu, bạn sẽ cần tạo một người dùng để chạy AirSonic.

Đầu tiên, hãy tạo một người dùng bằng lệnh sau:
Mã:
useradd airsonic
Tiếp theo, hãy tạo một thư mục cho AirSonic bằng lệnh sau:
Mã:
mkdir /var/airsonic /var/media_files
Tiếp theo, tải xuống phiên bản mới nhất của AirSonic từ kho lưu trữ Git bằng lệnh sau:
Mã:
wget https://github.com/airsonic/airsonic/releases/download/v10.4.1/airsonic.war --output-document=/var/airsonic/airsonic.war
Tiếp theo, cấp quyền thích hợp cho thư mục airsonic bằng lệnh sau:
Mã:
chown -R airsonic /var/airsonic
 chown -R airsonic /var/media_files
Tiếp theo, tải xuống tệp đơn vị systemd được cấu hình sẵn cho AirSonic bằng lệnh sau:
Mã:
wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic.service -O /etc/systemd/system/airsonic.service
 wget https://raw.githubusercontent.com/airsonic/airsonic/master/contrib/airsonic-systemd-env -O /etc/sysconfig/airsonic
Tiếp theo, tải lại daemon systemd bằng lệnh sau:
Mã:
systemctl daemon-reload
Tiếp theo, khởi động dịch vụ AirSonic và cho phép nó khởi động khi khởi động bằng các lệnh sau:
Mã:
systemctl start airsonic
 systemctl enable airsonic
Bây giờ bạn có thể xác minh trạng thái của AirSonic bằng lệnh sau:
Mã:
systemctl status airsonic
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? airsonic.service - Airsonic Media Server Đã tải: đã tải (/etc/systemd/system/airsonic.service; đã tắt; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2019-10-28 12:29:51 EDT; 2 phút 6 giây trước PID chính: 29564 (java) Nhiệm vụ: 18 (giới hạn: 5060) Bộ nhớ: 315,0M CGroup: /system.slice/airsonic.service ??29564 /usr/bin/java -Xmx700m -Dairsonic.home=/var/airsonic -Dserver.context-path=/airsonic -Dserver.port=8080 -jar /var/airsonic/>28/10 12:31:49 centos8 java[29564]: 2019-10-28 12:31:49.876 THÔNG TIN --- l.c.StandardChangeLogHistoryService: Đang đọc từ DATABASECHANGEL>28/10 12:31:49 centos8 java[29564]: 2019-10-28 12:31:49.877 THÔNG TIN --- l.executor.jvm.JdbcExecutor: CHỌN * TỪ DATABASECHANGE>28/10 12:31:49 centos8 java[29564]: 2019-10-28 12:31:49.969 THÔNG TIN --- liquibase.changelog.ChangeSet: Đánh dấu ChangeSet: classpath>Oct 28 12:31:49 centos8 java[29564]: classpath:liquibase/db-changelog.xml : Điều kiện tiên quyết tùy chỉnh không thành công: Điều kiện tiên quyết phiên bản chính của DBMS>Oct 28 12:31:49 centos8 java[29564]: 2019-10-28 12:31:49.972 THÔNG TIN --- l.executor.jvm.JdbcExecutor : SELECT MAX(ORDEREXECUTED) FR>Oct 28 12:31:50 centos8 java[29564]: 2019-10-28 12:31:50.017 THÔNG TIN --- l.executor.jvm.JdbcExecutor : INSERT INTO DATABASECHANGELO>Oct 28 12:31:50 centos8 java[29564]: 2019-10-28 12:31:50.020 THÔNG TIN --- l.l.StandardLockService : Đã phát hành thành công thay đổi>Oct 28 12:31:51 centos8 java[29564]: 2019-10-28 12:31:51.489 THÔNG TIN --- o.airsonic.player.dao.PlayerDao : Đã xóa 1 người chơi đã>Oct 28 12:31:52 centos8 java[29564]: 2019-10-28 12:31:52.424 THÔNG TIN --- o.a.p.s.MediaScannerService : Quét thư viện phương tiện tự động>Oct 28 12:31:53 centos8 java[29564]: 2019-10-28 12:31:53.093 INFO --- o.a.p.service.PodcastService : Automa
Bạn cũng có thể kiểm tra tiến trình đang chạy của AirSonic bằng lệnh sau:
Mã:
ps -ef | grep airsonic
Bạn sẽ thấy đầu ra sau:
Mã:
airsonic 29459 1 87 12:07 ? 00:02:08 /usr/bin/java -Xmx700m -Dairsonic.home=/var/airsonic -Dserver.context-path=/airsonic -Dserver.port=8080 -jar /var/airsonic/airsonic.warroot 29496 6103 0 12:10 pts/0 00:00:00 grep --color=auto airsonic

Truy cập Giao diện Web AirSonic​

Trước khi truy cập giao diện web AirSonic, bạn sẽ cần mở cổng 80 và 8080 bằng firewalld. Bạn có thể thực hiện bằng các lệnh sau:
Mã:
firewall-cmd --zone=public --add-port=80/tcp --permanent
 firewall-cmd --zone=public --add-port=8080/tcp --permanent
 firewall-cmd --reload
Tiếp theo, mở trình duyệt web và nhập URL . Bạn sẽ được chuyển hướng đến trang sau:



Cung cấp tên người dùng và mật khẩu mặc định là admin/admin và nhấp vào nút Đăng nhập vào. Bạn sẽ thấy trang sau:



Tiếp theo, bạn sẽ cần thay đổi mật khẩu quản trị viên mặc định. Để thực hiện việc này, hãy nhấp vào Thay đổi mật khẩu quản trị viên . Bạn sẽ thấy trang sau:



Chọn người dùng quản trị, đánh dấu vào hộp kiểm thay đổi mật khẩu, nhập mật khẩu mới và nhấp vào nút Lưu để thay đổi mật khẩu mặc định.

Tiếp theo, bạn sẽ cần thiết lập thư mục phương tiện để lưu trữ nhạc và video của mình. Để thực hiện, hãy nhấp vào cài đặt > thư mục Phương tiện. Bạn sẽ thấy trang sau:



Bây giờ, nhập /var/media_files vào hộp Thư mục và nhấp vào nút Lưu.

Cấu hình Nginx làm Proxy ngược​

Tiếp theo, bạn sẽ cần cấu hình Nginx làm proxy ngược cho Airsonic trên cổng 8080. Để thực hiện, trước tiên hãy cài đặt máy chủ web Nginx bằng lệnh sau:
Mã:
dnf install nginx
Sau khi cài đặt, hãy tạo tệp cấu hình máy chủ ảo Nginx:
Mã:
nano /etc/nginx/conf.d/airsonic.conf
Thêm các dòng sau:
Mã:
server { listen 80; server_name your-server-ip; access_log off; error_log off; location / { proxy_pass http://127.0.0.1:8080; 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_max_temp_file_size 0; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;}}
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, hãy kiểm tra Nginx xem có lỗi cú pháp nào không bằng lệnh sau:
Mã:
nginx -t
Bạn sẽ thấy kết quả sau:
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thành công
Tiếp theo, khởi động dịch vụ Nginx và cho phép nó khởi động sau khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl start nginx
 systemctl enable nginx
Bây giờ, bạn có thể truy cập AirSonic bằng cách truy cập URL .

Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công máy chủ phương tiện AirSonic với Nginx làm proxy ngược trên CentOS 8. Bây giờ bạn có thể lưu trữ máy chủ phương tiện của riêng mình và chia sẻ nhạc với bạn bè và gia đình. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên