【教程】使用腾讯云轻量应用服务器搭建Koel音频流服务,简单实现个人音乐服务!

2022-12-30 08:22:58 浏览数 (2)

前言

今天,小俊继续给大家带来腾讯云轻量应用服务器的玩法,相信大部分网友都玩过 PT 吧,有的进了音乐站,下载下来的音乐,因为策略问题经常只能在本机欣赏,但我们怎么多设备共享呢?所以我们可以自己搭建音频流服务,Let us GO!

准备工作

一台腾讯云轻量应用服务器(HK 或国内 为什么要用腾讯云轻量应用服务器呢?我们在腾讯云轻量应用服务器重装系统的时候,可以选择应用镜像,然后选择 'Docker' ,然后我们就可以使用 'Docker' 部署搭建了我们需要的程序啦! 腾讯云轻量应用服务器这段时间都有活动大家可以关注一下。

Koel 简介

Koel (also styled as koel, with a lowercase k) is a web-based personal audio streaming service written in Vue at the client side and Laravel on the server side. Targeting web developers, Koel embraces some of the more modern web technologies – flexbox, audio and drag-and-drop API to name a few – to do its job. 科尔(也为koel,小写k)是一个基于网络的个人音频流服务。

Koel 官网

https://koel.dev/

腾讯轻量部署Koel - Koel官网

界面演示

Koel

注意

本文软件基于腾讯云轻量应用服务器安装,使用,教程使用的腾讯云轻量应用服务器系统为 Docker CE 19.03.9 !理论上腾讯云轻量应用服务器为 Docker CE 19.03.9 的服务器操作应与本文基本一致(包括过程与报错,其他服务器应与本文大同小异!

安装 Koel

1. 安装宝塔面板

安装宝塔面板,便于安装 Nginx 和绑定域名与获取 SSL证书

代码语言:javascript复制
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

复制

2. 安装 Nginx

单选 Nginx ,其他取消选择,点击一键安装

腾讯轻量部署 Koel - 安装Nginx

3. 安装 Docker-compose

代码语言:javascript复制
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod  x /usr/local/bin/docker-compose

复制

腾讯轻量部署 Koel - 安装 Docker-compose

4. 新建docker-compose.yml文件

代码语言:javascript复制
vi docker-compose.yml

复制

然后输入以下配置内容

代码语言:javascript复制
version: '3.5'

services:
  koel:
    image: hyzual/koel
    depends_on:
      - koel-database
    ports:
      - "127.0.0.1:2077:80"
    environment:
      FORCE_HTTPS: 1
      MEMORY_LIMIT: 512
      DB_CONNECTION: mysql
      DB_HOST: koel-database
      DB_USERNAME: koel
      DB_PASSWORD: password
      DB_DATABASE: koel
    volumes:
      - koel_music:/music
      - koel_covers:/var/www/html/public/img/covers
    restart: unless-stopped

  koel-database:
    image: mysql/mysql-server:5.7
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: koel
      MYSQL_USER: koel
      MYSQL_PASSWORD: password
    volumes:
      - koel_db:/var/lib/mysql
    restart: unless-stopped

volumes:
  koel_db:
    driver: local
  koel_music:
    driver: local
  koel_covers:
    driver: local

复制

然后 Esc :wq 退出并保存即可。

腾讯轻量部署 Koel - 新建文件并输入配置内容

注意:docker-compose.yml 文件中所有 password 您应用高强度的密码替换它。2077为暴露端口,如被占用,请自行更改替换,需要在腾讯云轻量应用服务器的后台防火墙开放相应端口!

5. 重启Docker并Up项目

代码语言:javascript复制
service docker restart
docker-compose up -d

复制

腾讯轻量部署 Koel - 重启Docker并Up项目

输入以下命令确认所有容器都是up状态

代码语言:javascript复制
docker-compose ps

复制

腾讯轻量部署 Koel - 确认所有容器都是up状态

6. 初始化Koel

输入以下命令,初始化 Koel

代码语言:javascript复制
docker-compose exec koel php artisan koel:init 

复制

出现以下返回

代码语言:javascript复制
Attempting to install or upgrade Koel.
Remember, you can always install/upgrade manually following the guide here:
[Emoji]  https://docs.koel.dev

App key exists -- skipping
Migrating database
Creating default admin account
Seeding initial data
The absolute path to your media directory. If this is skipped (left blank) now, you can set it later via the web interface.

 Media path [/music]:
 > 直接回车

复制

这步执行完会出现如下报错

代码语言:javascript复制
Oops! Koel installation or upgrade didn't finish successfully.
Please try again, or visit https://docs.koel.dev for manual installation.
[Emoji] Sorry for this. You deserve better.

复制

原因是前端资源已经在容器内构建好了,这里就不用再构建了,所以会报错。错误可以直接忽略。

腾讯轻量部署 Koel - 初始化Koel

默认管理员邮箱:admin@koel.dev 默认管理员密码:KoelIsCool 输入以下命令,修改管理员密码,需输入两次

代码语言:javascript复制
docker exec -it <container_name_for_koel> php artisan koel:admin:change-password

复制

其中<container_name_for_koel>为容器名字,教程中为koel_koel_1

腾讯轻量部署 Koel - 修改管理员密码

7. 添加网站并设置反代

进入宝塔面板,点击网站,点击添加站点,在域名栏输入您的域名,然后提交

腾讯轻量部署 Koel - 添加网站

然后点击网站设置,点击SSL,为网站申请一个SSL证书,或者填入已有证书

腾讯轻量部署 Koel - 添加网站

点击反向代理,然后点击添加反向代理,点击提交,完成设置

腾讯轻量部署 Koel - 添加反代

至此,我们已经安装完成 Koel 音频流服务了 浏览器访问您刚刚设置的域名即可访问!进入登录后即可享用 Koel 音频流服务,上传歌曲然后畅快欣赏音乐啦啦! Ps:需要在腾讯云轻量应用服务器的后台防火墙开放相应端口!默认需要开放 80 tcp 与 443 tcp哦。

0 人点赞