How to build an online learning platform in a local area network?

Online learning platforms usually present content through audio and video, so it is inevitable to build on-demand + live broadcast services.

More than ten years ago, WEB applications had not yet risen, and everyone was still using CS architecture such as "Meiping On Demand" to build an on-demand platform. Now it is the world of browsers, using open source software to build a BS architecture for on-demand + live broadcast platforms Much favored.

Cloud platforms such as Alibaba and Tencent have very mature on-demand + live broadcast solutions. How to quickly build related services in a LAN environment?

On-demand platform

(1) Simple application

If you don't need multi-bit rate playback and video encryption, you can directly upload the video in mp4 (H264) format (most browsers can play it directly), and you can store the video well.

(2) Advanced application

If you need multi-bit rate playback, video encryption, and video watermarking, this can be done using an open source ffmpeglibrary . The server runs stably and efficiently, and can be well automated.

Live platform

Live streaming needs to push and pull streams. This is still very technical, and there are certain technical thresholds. It is unrealistic to implement it yourself.

(1) Use the nginx+ rtmpstreaming module, but it is not very stable, after all, nginxI am not a professional streaming server.
(2) Utilize professional open source live broadcast projects livegosuch as , and go语言use the inherent advantages of network applications, and the stability needs to be tested.

system integration

After research and unremitting efforts, I made a lot of transplantation and modification (storage, on-demand, live broadcast) of the open source Kuguayun Class Tencent Cloud Edition to replace it with the local one, and removed the payment and other functions that are not used in the LAN.

Let's start the installation. Although it is a LAN application, the installation needs to be connected to the external network (there will be a local installation package later when there is time), and prepare a cup of coffee first (it will be a bit slow if the network is not good)

friendly reminder

Please use a clean system to perform the installation. If you have installed it before nginx, apacheit will cause a conflict on port 80

configuration requirements

  • Operating system: Ubuntu | Debain | Centos
  • System memory: 2G+

Apply for authorization

Application address: Click to apply

installation guide

Official document: click to visit

(1) Download the installation script

cd ~ && curl https://download.koogua.com/lan-edu/install.sh -o install.sh

(2) Modify the configuration according to the actual situation

nano install.sh

(3) Execute the installation, the speed depends on the network, when there is an error or timeout, please try again, please try again, please try again

bash install.sh

(4) After the installation is complete, please delete the installation script

rm install.sh

Guess you like

Origin blog.csdn.net/xiaochong0302/article/details/126649206