华为云征文|部署电影收藏管理器 Radarr
一、Flexus云服务器X实例介绍
1.1 云服务器介绍
使用云服务器的意义在于其提供的弹性、可扩展性和成本效益,使企业能够根据需求动态调整资源,优化运营效率,同时降低前期投资和维护成本。云服务器消除了物理硬件的限制,加快部署速度,提高了业务的灵活性和响应市场变化的能力。
华为云下一代云服务器Flexus X实例焕新上线,新产品具备柔性算力,六倍性能,旗舰体验,覆盖高科技、零售、金融、游戏等行业大多数通用工作负载场景,从而帮您快速上云!
Flexus X实例通过和其他服务组合,具备计算、镜像安装、网络、存储、安全等能力,您可根据业务需要灵活配置各资源。
本次测评使用的规格是:4核12G-100G-3M规格
的Flexus X实例基础模式
1.2 应用场景
Flexus云服务器X实例打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。
电商直播
:基于Flexus X实例搭建电商交易平台,可以从容面对电商市场瞬息万变对的业务压力变化。企业建站
:面向博客、论坛,和企业门户等业务场景,帮助企业传播价值信息,促进信息共享和交流,支撑用户建设多功能的传播和交互平台。个人开发测试
:开发者在开发、测试过程中需要的环境资源,可以选择从云上提供。基于Flexus云服务器X实例搭建开发测试环境,更加便利,成本更优。游戏服务器
:适用于搭建游戏后台服务器,强大算力轻松应对千人同时在线,同时平滑扩容可快速应对服务器玩家数量上涨诉求,超强的网络加速能力提升用户体验。
1.3 核心竞争力
-
柔性算力随心配
基于用户业务负载动态和内存峰值画像,动态推荐规格,减少算力浪费,提升资源利用率 -
一直加速一直快
首创大模型加持,智能全域调度;X-Turbo加速,常见应用性能最高可达业界同规格6倍 -
越用越省降本多
按照算力规格变化,精准计算用量,按需灵活计费,搭配智能推介,始终确保成本更优 -
安全可靠更放心
提供旗舰级安全品质,跨AZ 99.995%可用性,100+全球权威合规认证
二、Flexus云服务器X实例配置
2.1 重置密码
购买完成后,会短信通过你的云服务器信息,重点是公网IP地址
和用户名。首先我们需要打开你的服务器控制台,完成重置密码
勾选自动重启,点击确定即可。
2.2 服务器连接
-
方式一:使用控制台提供的VNC方式登录
-
方式二:使用Putty、Xshell等工具登录Linux弹性云服务器,
a) 下载安装登录工具,例如Putty。
b) 输入弹性公网IP。
c) 输入用户名:root、密码,单击“确定”。 -
方式三:使用Linux/Mac OS系统主机登录Linux弹性云服务器。
a) 执行连接命令。
ssh 弹性公网IP
例如:ssh 123.xxx.xxx.456
b) 输入用户名:root、密码,登录服务器。
我个人习惯使用 MobaXterm
这款软件,添加SSH连接,输出公网IP
、用户名和端口(默认22),连接即可。
2.3 安全组配置
安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略
。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。
系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组
。
主要需要填写优先级
(默认填1即可)、协议端口信息
(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。
如果还不清楚可以参考文档:安全组配置示例
三、部署 Radarr
3.1 Radarr 介绍
Radarr是一个功能强大的应用程序,可以自动化电影下载和管理,让您享受更便捷、个性化的电影观看体验。它可以通过连接到torrent自动搜索并下载最新的电影发布。
Radarr还支持与其他应用程序的整合,如媒体服务器、下载管理器和通知工具。这使得Radarr成为一个强大的工具,可以与其他系统协同工作,提供更好的电影体验。
- 添加新电影时提供详细信息,如预告片和评分。
- 支持多种平台,包括 Windows、Linux、macOS 和 Raspberry Pi。
- 自动监控和升级电影品质,例如从 DVD 升级到蓝光。
- 自动处理失败下载,尝试其他版本。
- 提供手动搜索功能,用户可以选择不同版本或查看未下载原因。
- 完全集成 SABnzbd 和 NZBGet 下载客户端。
- 自动搜索发布、RSS 同步和电影导入。
- 识别特别版、导演剪辑版,以及硬编码字幕版本。
- 与 Kodi 和 Plex 无缝集成,支持通知和库更新。
- 支持导入和添加包括元数据在内的详细电影信息。
- 提供美观的用户界面和高级自定义配置选项。
Joomla 为您提供了绝佳的机会来发展您的业务,构建网站和应用程序,坚如磐石的代码库和庞大的全球社区将帮助您快速上手。无论您是想构建网站还是开发应用程序、开发模板或扩展,还是基于我们的框架开发全新的东西,有了 Joomla,可能性无穷无尽,今天就开始使用 Joomla 吧!
- 官网:https://radarr.video/
- Github:https://github.com/Radarr/Radarr
3.2 Docker 环境搭建
本次服务器环境是ubuntu系统镜像,需要自己安装docker环境
服务器类别 | 系统镜像 | 内网IP地址 | Docker版本 | 操作系统版本 |
---|---|---|---|---|
Flexus云服务器X实例 | Ubuntu | 192.168.0.168 | 27.2.0 | Ubuntu 22.04.4 LTS |
使用apt-get
命令安装docker及其配置
# 安装必要工具包
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
# 添加Docker GPG秘钥
$ sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 配置仓库源
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 更新apt包索引
$ sudo apt-get update
# 安装docker
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
# 添加docker镜像源
$ sudo vim /etc/docker/daemon.json
{
"registry-mirrors": [
"https://ustc-edu-cn.mirror.aliyuncs.com/",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn",
"https://ccr.ccs.tencentyun.com/",
"https://docker.m.daocloud.io/",
"https://dockerproxy.com",
]
}
# 重启
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
测试docker
安装是否成功
root@flexusx-c6b3:~# docker -v
Docker version 27.2.0, build 3ab4256```
检查docker
服务状态
root@flexusx-c6b3:~# systemctl status docker
* docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2024-08-30 15:53:45 CST; 17h ago
TriggeredBy: * docker.socket
Docs: https://docs.docker.com
Main PID: 24912 (dockerd)
Tasks: 13
Memory: 24.7M
CPU: 3.778s
CGroup: /system.slice/docker.service
`-24912 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
检查docker compose
版本
root@flexusx-c6b3:~# docker compose version
Docker Compose version v2.29.2
3.3 Radarr 部署
- 创建 docker-compose.yml
需要三个services:joomla、mysql、phpmyadmin
version: '2'
services:
joomla:
#image: joomla:3.6.2-apache-php7
image: joomla:3.6.2-apache
links:
- mysql
ports:
- "2370:80"
environment:
- JOOMLA_DB_HOST=mysql:3306
- JOOMLA_DB_PASSWORD=12345678
volumes:
- ./code:/var/www/html
mysql:
image: mysql:5.7.14
environment:
- MYSQL_ROOT_PASSWORD=12345678
- MYSQL_DATABASE=joomla
volumes:
- ./database:/var/lib/mysql
phpmyadmin:
image: phpmyadmin/phpmyadmin:4.6.4-1
links:
- mysql
ports:
- "2371:80"
environment:
- PMA_HOST=mysql
- volumes:映射容器内部文件路径到本地
- ports:配置访问端口
如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d
即可自动拉取 Joomla 镜像,并创建并启动一个容器。 up
表示启动服务,-d
表示在后台执行。docker-compose down
命令用于停止和清理由 docker-compose up
启动的服务。
- 配置安全组
在Flexus云服务器X实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听2370端口,所以添加安全组为TCP:2370
协议端口。
- 启动服务
进入项目目录,执行docker compose up -d
启动命令,会自动拉取容器并运行
从 docker hub 拉取 Joomla 镜像,地址:https://hub.docker.com/_/joomla
root@flexusx-c6b3:~/joomla# docker-compose up -d
Creating network "joomla_default" with the default driver
Pulling mysql (mysql:5.7.14)...
5.7.14: Pulling from library/mysql
357ea8c3d80b: Pull complete
256a92f57ae8: Pull complete
d5ee0325fe91: Pull complete
a15deb03758b: Pull complete
7b8a8ccc8d50: Pull complete
1a40eeae36e9: Pull complete
833539b56478: Pull complete
4f350efbb7e5: Pull complete
266f161e49c6: Pull complete
b53a75e45220: Pull complete
75196bb75c29: Pull complete
Digest: sha256:c8f03238ca1783d25af320877f063a36dbfce0daa56a7b4955e6c6e05ab5c70b
Status: Downloaded newer image for mysql:5.7.14
Pulling joomla (joomla:3.6.2-apache)...
3.6.2-apache: Pulling from library/joomla
6a5a5368e0c2: Pull complete
de059afc6b5d: Pull complete
9b1ac0143753: Pull complete
a05dcf7da589: Pull complete
5e38500c0906: Pull complete
a9cba9364455: Pull complete
cc53f7ef4906: Pull complete
6b6a63a6d903: Pull complete
451d9efcb5d6: Pull complete
850743d4e387: Pull complete
720bc600730d: Pull complete
631b7b76ef12: Pull complete
9704d22c95df: Pull complete
8cf045bad67a: Pull complete
0716e0d1c7f4: Pull complete
a3185d25ae5b: Pull complete
2b6786ca2c28: Pull complete
61f824ad7e03: Pull complete
e68799170f63: Pull complete
Digest: sha256:71ba7737a516e57353f19bf7cb78ba10409bd17d273ac79bf05579d8c33ad7e8
Status: Downloaded newer image for joomla:3.6.2-apache
Pulling phpmyadmin (phpmyadmin/phpmyadmin:4.6.4-1)...
4.6.4-1: Pulling from phpmyadmin/phpmyadmin
e110a4a17941: Pull complete
11322cb8a123: Pull complete
32d0a8f76a6d: Pull complete
6fb3852b28dc: Pull complete
a358b8616f5a: Pull complete
32130b8bb890: Pull complete
Digest: sha256:f6fa7ba71dcf9f5e024af5ddf1d6c3c9714ae1f963813ade5310ebe4095233e9
Status: Downloaded newer image for phpmyadmin/phpmyadmin:4.6.4-1
Creating joomla_mysql_1 ...
Creating joomla_mysql_1 ... done
Creating joomla_phpmyadmin_1 ...
Recreating joomla_joomla_1 ...
Recreating joomla_joomla_1
Creating joomla_phpmyadmin_1
Recreating joomla_joomla_1 ... done
Creating joomla_phpmyadmin_1 ... done
- 检查容器状态
检查 Joomla 容器状态,确保容器正常启动
root@flexusx-c6b3:~/joomla# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5806d7c02f7c joomla:3.6.2-apache "/entrypoint.sh apac…" 14 minutes ago Up 14 minutes 0.0.0.0:2222->80/tcp, :::2222->80/tcp joomla_joomla_1
523da354d1d4 phpmyadmin/phpmyadmin:4.6.4-1 "/run.sh" 14 minutes ago Up 14 minutes 0.0.0.0:81->80/tcp, :::81->80/tcp joomla_phpmyadmin_1
3bf8c541b14e mysql:5.7.14 "docker-entrypoint.s…" 14 minutes ago Up 14 minutes 3306/tcp joomla_mysql_1
- 访问地址
内网:http://localhost:2370
外网:http://公网IP:2370
- 访问结果
若出现此页面,则部署 joomla server 成功。
3.4 Radarr 使用
按照Joomla安装向导完成环境配置,依次确定配置、数据库和概况,首先填写网站基本信息和注册管理员账户
数据库设置,主机名、数据库名、数据库密码为docker-compose.xml
中配置的参数,用户名默认root
概框页面展示我们前面设置的参数进行确定,安装示范数据
这里选择手册风格的示范内容(英文)
,安装后网站内容为手册风格
下面还有更多配置描述,确定后点击安装完成
安装过程可能时间较长,耐心等待,包括旧数据表备份、数据库表创建、示范数据安装、配置文件创建
出现下述页面,即表示成功安装您的Joomla网站了
安装中文语言包
设置默认语言为中文
最后需要彻底删除目录installation
,即可进入网站:http://127.0.0.1:2370/
或者查看后台管理:http://127.0.0.1:2370/administrator
,输入设置的管理员帐号和密码完成登录
后台管理的控制面板,功能十分丰富,内容管理
:添加文章、文章管理、文章分类管理、多媒体文件管理,前台配置
:菜单管理、模块管理,会员管理
:查看会员,系统配置
:全局配置、模板管理 、语言管理,扩展管理
:安装扩展
添加新文章,编辑器是富文本编辑器,貌似不支持markdown
保存后即发布到网站,可以选择显示在网站上的某个类别里
发布成功后就可以在网站的news
分类中查看到刚刚编辑并保存的文章了
我们来查看下 Joomla 的映射文件路径下的结构
root@flexusx-c6b3:~/joomla# tree -L 1
.
|-- code
|-- database
`-- docker-compose.yml
2 directories, 1 file
database
即为数据库目录code
即为站点目录,包括网页的代码数据
Joomla 作为内容管理系统的个人使用就是上面的这些了,主要感觉编辑器比较传统,网站主题界面都比较老旧,不符合现代审美,可能需要更多的调整,其他更多的功能和配置就需要自行探索了。
四、总结
云服务器为 Docker 项目提供了灵活、可扩展的部署环境。推荐使用华为云Flexus云服务器X实例
,可以根据项目需求选择合适的配置。例如,对于个人小项目,可以选用配置较低的入门级实例;对于高并发、大数据处理等场景,则可以选择高性能的计算型实例。此外,这些云服务商还提供了丰富的云产品生态,如负载均衡、数据库、存储等,可以帮助你快速搭建完整的应用架构。
此次使用的Flexus X实例配置还是很高的4核12G-100G-3M规格
的基础模式
,部署的 Joomla 使用体验很完美,能充分发挥云计算的强大优势,云服务器弹性伸缩能力强,可根据网站访问量自动调整资源配置,保证网站始终保持流畅运行,确保博客的顺畅运行,为使用者提供无忧的博客创作和分享体验。主要是Joomla
的UI设计没有达到预期,没有体验下去的欲望了。