华为云Flexus X实例docker部署mediacms,功能齐全的现代化开源视频和媒体CMS

89 阅读5分钟

·华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧!

什么是华为云Flexus X实例  

·华为云Flexus X实例云服务是新一代开箱即用、体验跃级、面向中小企业和开发者打造的高品价比云服务产品。

·Flexus云服务器X实例是新一代面向中小企业和开发者打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

开始接触华为云Flexus云服务器X实例  

·获取华为云Flexus云服务器X实例后第一步就是先去华为云上重置服务器密码      

·重置完毕后用ssh工具登录华为云服务器,这里我用的是finalshell,也可以用其他工具登陆比如xshell或者Putty都可以    

·登录上去查看硬盘大小,可以看到是100g硬盘,硬盘总大小是正常的

root@flexusx-ebe8:~# df -h              
Filesystem      Size  Used Avail Use% Mounted on              
tmpfs           1.2G  1.1M  1.2G   1% /run              
/dev/vda1        99G  4.2G   90G   5% /              
tmpfs           5.7G     0  5.7G   0% /dev/shm              
tmpfs           5.0M     0  5.0M   0% /run/lock              
tmpfs           1.2G  4.0K  1.2G   1% /run/user/0

·然后输入 ufw status可以看到默认防火墙是关闭的,因此我们就不需要额外再去配置端口开放相关的配置,只要在华为云安全组配置端口开放就可以了

root@flexusx-ebe8:~# ufw status              
Status: inactive

docker环境的安装  

·然后进行docker容器的安装,安装最新版本的docker    

·这里因为docker现在已经无法直接通过网络安装,所以我们通过离线安装的方式安装docker环境

·从官网下载离线包

download.docker.com/linux/ubunt…

·如图所示,把离线包传到服务器上,进行安装

dpkg -i *.deb

·查看安装的docker版本

root@flexusx-ebe8:/home/docker# docker -v              
Docker version 27.1.2, build d01f264

docker-compose安装  

·docker容器安装完毕后,开始安装docker-compose

·github.com/docker/comp…  

·因为我是x86-64的环境,所以从中找到docker-compose-linux-x86_64进行下载

·下载完毕后上传到服务器,然后执行 sudo cp -f docker-compose-linux-x86_64 /usr/local/bin/docker-compose

·然后授予可执行权限,sudo chmod +x /usr/local/bin/docker-compose

·查看docker-compose版本

root@flexusx-ebe8:/# sudo docker-compose -v              
Docker Compose version v2.29.2

·这样docker-compose就安装完毕了

什么是mediacms  

·MediaCMS 是一个开源的内容管理系统,主要用于视频和媒体共享。它基于 Django Web 框架,前端使用 React,提供了一个现代化且可定制的平台,允许用户创建类似 YouTube 的网站,用于共享视频、音频和图像。

·此外,MediaCMS 允许用户对上传的媒体进行分类、打标签,并提供嵌入、分享和下载选项。用户可以将媒体分享至多个社交平台,并生成嵌入代码用于在其他网站展示视频。系统内置评论、点赞和浏览计数等功能,方便用户互动和内容管理。

开始部署mediacms  

·先去github上找到mediacmshttps://github.com/mediacms-io/mediacms/tree/main

·然后把代码打包下载下来,放到服务器上      

·配置管理员密码    

·输入docker-compose up

root@flexusx-ebe8:/home/docker/mediacms/mediacms-main# docker ps                
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES                
root@flexusx-ebe8:/home/docker/mediacms/mediacms-main# docker-compose up -d                
WARN[0000] The "POSTGRES_DB" variable is not set. Defaulting to a blank string.                
WARN[0000] The "POSTGRES_USER" variable is not set. Defaulting to a blank string.                
WARN[0000] /home/docker/mediacms/mediacms-main/docker-compose.yaml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion                
[+] Running 6/6                
✔ Container mediacms-main-redis-1          Healthy                                                                                                                             30.7s                
✔ Container mediacms-main-celery_beat-1    Started                                                                                                                              0.4s                
✔ Container mediacms-main-db-1             Healthy                                                                                                                             10.2s                
✔ Container mediacms-main-migrations-1     Started                                                                                                                             30.9s                
✔ Container mediacms-main-celery_worker-1  Started                                                                                                                             31.2s                
✔ Container mediacms-main-web-1            Started                         

·查看mediacms状态 输入 docker ps

root@flexusx-ebe8:/home/docker/mediacms/mediacms-main# docker ps                
CONTAINER ID   IMAGE                      COMMAND                  CREATED         STATUS                        PORTS                                         NAMES                
8a10bb61ba0a   mediacms/mediacms:latest   "./deploy/docker/ent…"   4 minutes ago   Up 31 seconds                 80/tcp, 9000/tcp                              mediacms-main-celery_worker-1                
f16673165f0e   mediacms/mediacms:latest   "./deploy/docker/ent…"   4 minutes ago   Up 31 seconds                 0.0.0.0:80->80/tcp, :::80->80/tcp, 9000/tcp   mediacms-main-web-1                
883ff64c0638   mediacms/mediacms:latest   "./deploy/docker/ent…"   4 minutes ago   Up About a minute             80/tcp, 9000/tcp                              mediacms-main-celery_beat-1                
81b825bae6bf   postgres:15.2-alpine       "docker-entrypoint.s…"   4 minutes ago   Up About a minute (healthy)   5432/tcp                                      mediacms-main-db-1                
a47ca9778e33   redis:alpine               "docker-entrypoint.s…"   4 minutes ago   Up About a minute (healthy)   6379/tcp                                      mediacms-main-redis-1    

·此时mediacms已经部署好了,但还需要去华为云服务器安全组开放端口

配置Flexus云服务器X实例安全组  

·经过上面部署mediacms服务,这时候服务是已经部署完毕了,但是我们还没法通过外网进行访问,还需要对Flexus云服务器X安全组的配置进行修改

·进入安全组的配置页面

·新建安全组    

·这里我们开放80与9000端口

·然后加入新建的安全组    

·这样我们的实例的端口也就开放成功了

访问 mediacms Web 界面  

·输入弹性公网ip:80,访问页面

·输入账号密码登录      

·开始使用mediacms上传图片     

·可以看到成功上传了图片

·使用mediacms上传视频      

·播放视频

·至此华为云Flexus X实例docker部署mediacms,功能齐全的现代化开源视频和媒体CMS大功告成

欢迎大家一起加入华为云!