0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

部署内容管理系统 Joomla

jf_94205927 来源:jf_94205927 作者:jf_94205927 2024-12-31 10:40 次阅读

一、Flexus 云服务器 X 实例介绍

1.1 云服务器介绍

使用云服务器的意义在于其提供的弹性、可扩展性和成本效益,使企业能够根据需求动态调整资源,优化运营效率,同时降低前期投资和维护成本。云服务器消除了物理硬件的限制,加快部署速度,提高了业务的灵活性和响应市场变化的能力。

华为云下一代云服务器 Flexus X 实例焕新上线,新产品具备柔性算力,六倍性能,旗舰体验,覆盖高科技、零售、金融、游戏等行业大多数通用工作负载场景,从而帮您快速上云!

wKgZO2dzWXeAVHA7AAE3BYFqDzM053.png

Flexus X 实例通过和其他服务组合,具备计算、镜像安装、网络、存储、安全等能力,您可根据业务需要灵活配置各资源。

wKgZPGdzWXeAOTKyAAvyr-51fqA952.gif

wKgZO2dzWXeADNfwAAEe1bNc6vg824.png

本次测评使用的规格是:4 核 12G-100G-3M 规格的 Flexus X 实例基础模式

wKgZO2dzWXiAMOIAAADbGgbRz8w806.png

1.2 应用场景

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

•电商直播:基于 Flexus X 实例搭建电商交易平台,可以从容面对电商市场瞬息万变对的业务压力变化。

•企业建站:面向博客、论坛,和企业门户等业务场景,帮助企业传播价值信息,促进信息共享和交流,支撑用户建设多功能的传播和交互平台。

•个人开发测试:开发者在开发、测试过程中需要的环境资源,可以选择从云上提供。基于 Flexus 云服务器 X 实例搭建开发测试环境,更加便利,成本更优。

•游戏服务器:适用于搭建游戏后台服务器,强大算力轻松应对千人同时在线,同时平滑扩容可快速应对服务器玩家数量上涨诉求,超强的网络加速能力提升用户体验。

1.3 核心竞争力

•柔性算力随心配基于用户业务负载动态和内存峰值画像,动态推荐规格,减少算力浪费,提升资源利用率

•一直加速一直快首创大模型加持,智能全域调度;X-Turbo 加速,常见应用性能最高可达业界同规格 6 倍

•越用越省降本多按照算力规格变化,精准计算用量,按需灵活计费,搭配智能推介,始终确保成本更优

•安全可靠更放心提供旗舰级安全品质,跨 AZ 99.995%可用性,100+全球权威合规认证

二、Flexus 云服务器 X 实例配置

2.1 重置密码

购买完成后,会短信通过你的云服务器信息,重点是公网 IP 地址和用户名。首先我们需要打开你的服务器控制台,完成重置密码

wKgZPGdzWXiAXqysAAEht_ZSD6I225.png

勾选自动重启,点击确定即可。

wKgZO2dzWXiAd_v-AAEm9L_LepM498.png

2.2 服务器连接

•方式一:使用控制台提供的 VNC 方式登录

•方式二:使用 Putty、Xshell 等工具登录 Linux 弹性云服务器,a)下载安装登录工具,例如 Putty。b)输入弹性公网 IP。c)输入用户名:root、密码,单击“确定”。

•方式三:使用 Linux/Mac OS 系统主机登录 Linux 弹性云服务器。a)执行连接命令。ssh 弹性公网 IP 例如:ssh 123.xxx.xxx.456b)输入用户名:root、密码,登录服务器。

我个人习惯使用 MobaXterm这款软件,添加 SSH 连接,输出公网 IP、用户名和端口(默认 22),连接即可。

wKgZPGdzWXiAKtBHAAD9ADt1Woc413.png

2.3 安全组配置

安全组是一个逻辑上的分组,为同一个 VPC 内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。

系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。

wKgZO2dzWXmAC0zbAAEfDVjdzPY563.png

主要需要填写优先级(默认填 1 即可)、协议端口信息(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。

wKgZO2dzWYOAYKaMAAE7Ww8851Q167.png

如果还不清楚可以参考文档:安全组配置示例

三、部署 Joomla

3.1 Joomla 介绍

Joomla!是一款免费的开源内容管理系统(CMS),用于发布网络内容。它建立在模型-视图-控制器 Web 应用程序框架上,可以独立于 CMS 使用,让您可以构建强大的在线应用程序。Joomla!是最受欢迎的网站软件之一,这要归功于其全球开发者和志愿者社区,他们确保该平台具有用户友好性、可扩展性、多语言性、可访问性、响应性、搜索引擎优化等特点。

CMS 的定义是一种应用程序(基于 Web),它为具有不同权限级别的多个用户提供管理网站项目或内联网应用程序的(全部或部分)内容、数据或信息的功能。管理内容是指创建、编辑、存档、发布、协作、报告、分发网站内容、数据和信息。

Joomla!可用于:企业网站或门户、小型企业网站、在线杂志、报纸和出版物,电子商务和网上预订,政府、非营利组织和组织网站,社区、学校和教堂网站或门户网站,个人或家庭主页。

wKgZPGdzWYOAcH0wAAI1bGiBPdA853.png

Joomla 为您提供了绝佳的机会来发展您的业务,构建网站和应用程序,坚如磐石的代码库和庞大的全球社区将帮助您快速上手。无论您是想构建网站还是开发应用程序、开发模板或扩展,还是基于我们的框架开发全新的东西,有了 Joomla,可能性无穷无尽,今天就开始使用 Joomla 吧!

•官网:https://www.joomla.org/

•Github:https://github.com/joomla/joomla-cms

3.2 Docker 环境搭建

本次服务器环境是 ubuntu 系统镜像,需要自己安装 docker 环境

使用 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 -vDocker version 27.2.0, build 3ab4256```

检查 docker 服务状态

root@flexusx-c6b3:~# systemctl status docker* docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-08-30 15:53:45 CST; 17h agoTriggeredBy: * docker.socketDocs: https://docs.docker.comMain PID: 24912 (dockerd)Tasks: 13Memory: 24.7MCPU: 3.778sCGroup: /system.slice/docker.service`-24912 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

检查 docker compose 版本

root@flexusx-c6b3:~# docker compose versionDocker Compose version v2.29.2

3.3 Joomla 部署

•创建 docker-compose.yml

需要三个 services:joomla、mysql、phpmyadmin

version:'2'services:joomla:#image: joomla:3.6.2-apache-php7image:joomla:3.6.2-apachelinks: -mysqlports: -"2370:80"environment: -JOOMLA_DB_HOST=mysql:3306 -JOOMLA_DB_PASSWORD=12345678volumes: -./code:/var/www/htmlmysql:image:mysql:5.7.14environment: -MYSQL_ROOT_PASSWORD=12345678 -MYSQL_DATABASE=joomlavolumes: -./database:/var/lib/mysqlphpmyadmin:image:phpmyadmin/phpmyadmin:4.6.4-1links: -mysqlports: -"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 协议端口。

wKgZO2dzWYSAExzIAAAhQYdkmiM617.png

•启动服务

进入项目目录,执行 docker compose up -d 启动命令,会自动拉取容器并运行

从 docker hub 拉取 Joomla 镜像,地址:https://hub.docker.com/_/joomla

root@flexusx-c6b3:~/joomla# docker-compose up -dCreating network "joomla_default" with the default driverPulling mysql (mysql:5.7.14)...5.7.14: Pulling from library/mysql357ea8c3d80b: Pull complete256a92f57ae8: Pull completed5ee0325fe91: Pull completea15deb03758b: Pull complete7b8a8ccc8d50: Pull complete1a40eeae36e9: Pull complete833539b56478: Pull complete4f350efbb7e5: Pull complete266f161e49c6: Pull completeb53a75e45220: Pull complete75196bb75c29: Pull completeDigest: sha256:c8f03238ca1783d25af320877f063a36dbfce0daa56a7b4955e6c6e05ab5c70bStatus: Downloaded newer image for mysql:5.7.14Pulling joomla (joomla:3.6.2-apache)...3.6.2-apache: Pulling from library/joomla6a5a5368e0c2: Pull completede059afc6b5d: Pull complete9b1ac0143753: Pull completea05dcf7da589: Pull complete5e38500c0906: Pull completea9cba9364455: Pull completecc53f7ef4906: Pull complete6b6a63a6d903: Pull complete451d9efcb5d6: Pull complete850743d4e387: Pull complete720bc600730d: Pull complete631b7b76ef12: Pull complete9704d22c95df: Pull complete8cf045bad67a: Pull complete0716e0d1c7f4: Pull completea3185d25ae5b: Pull complete2b6786ca2c28: Pull complete61f824ad7e03: Pull completee68799170f63: Pull completeDigest: sha256:71ba7737a516e57353f19bf7cb78ba10409bd17d273ac79bf05579d8c33ad7e8Status: Downloaded newer image for joomla:3.6.2-apachePulling phpmyadmin (phpmyadmin/phpmyadmin:4.6.4-1)...4.6.4-1: Pulling from phpmyadmin/phpmyadmine110a4a17941: Pull complete11322cb8a123: Pull complete32d0a8f76a6d: Pull complete6fb3852b28dc: Pull completea358b8616f5a: Pull complete32130b8bb890: Pull completeDigest: sha256:f6fa7ba71dcf9f5e024af5ddf1d6c3c9714ae1f963813ade5310ebe4095233e9Status: Downloaded newer image for phpmyadmin/phpmyadmin:4.6.4-1Creating joomla_mysql_1 ... Creating joomla_mysql_1 ... doneCreating joomla_phpmyadmin_1 ... Recreating joomla_joomla_1 ... Recreating joomla_joomla_1Creating joomla_phpmyadmin_1Recreating joomla_joomla_1 ... doneCreating joomla_phpmyadmin_1 ... done

•检查容器状态

检查 Joomla 容器状态,确保容器正常启动

root@flexusx-c6b3:~/joomla# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES5806d7c02f7c 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_1523da354d1d4 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_13bf8c541b14e mysql:5.7.14 "docker-entrypoint.s…" 14 minutes ago Up 14 minutes 3306/tcp joomla_mysql_1

•访问地址

内网:http://localhost:2370 外网:http://公网 IP:2370

•访问结果

wKgZPGdzWYSALEcKAACuf4SCuog517.png

若出现此页面,则部署 joomla server 成功。

3.4 Joomla 使用

按照 Joomla 安装向导完成环境配置,依次确定配置、数据库和概况,首先填写网站基本信息和注册管理员账户

wKgZO2dzWYSAfZo8AAC8JWG_cXQ857.png

数据库设置,主机名、数据库名、数据库密码为 docker-compose.xml 中配置的参数,用户名默认 root

wKgZPGdzWYSAK3tsAADeFTGkOg4746.png

概框页面展示我们前面设置的参数进行确定,安装示范数据这里选择手册风格的示范内容(英文),安装后网站内容为手册风格

wKgZO2dzWYWALyVKAADmc2vsdDg201.png

下面还有更多配置描述,确定后点击安装完成

wKgZPGdzWYWAVvs4AAEYLCuOpM8016.png

安装过程可能时间较长,耐心等待,包括旧数据表备份、数据库表创建、示范数据安装、配置文件创建

wKgZO2dzWYWAa7fSAAA92CFRIW4942.png

出现下述页面,即表示成功安装您的 Joomla 网站了

wKgZPGdzWYWADUWvAADkdkgSYUE518.png

安装中文语言包

wKgZO2dzWYaAKZ8ZAADqsoK5lsE356.png

设置默认语言为中文

wKgZPGdzWYaAWdOZAAEFApZMixw633.png

最后需要彻底删除目录 installation,即可进入网站:http://127.0.0.1:2370/

wKgZO2dzWYaAEE3HAAIRmoz_8fs881.png

或者查看后台管理:http://127.0.0.1:2370/administrator,输入设置的管理员帐号和密码完成登录

wKgZPGdzWYeAZS8MAAA7D41GM_M008.png

后台管理的控制面板,功能十分丰富,内容管理:添加文章、文章管理、文章分类管理、多媒体文件管理,前台配置:菜单管理、模块管理,会员管理:查看会员,系统配置:全局配置、模板管理、语言管理,扩展管理:安装扩展

wKgZO2dzWYeAFYXsAAE-xzWPqrk397.png

添加新文章,编辑器是富文本编辑器,貌似不支持 markdown

wKgZPGdzWYeAGFm-AAEBdMePnXw863.png

保存后即发布到网站,可以选择显示在网站上的某个类别里

wKgZO2dzWYeAL-bXAAHoS01AJxg684.png

发布成功后就可以在网站的 news 分类中查看到刚刚编辑并保存的文章了

wKgZPGdzWYiAela4AAI71nR8X5E983.png

我们来查看下 Joomla 的映射文件路径下的结构

root@flexusx-c6b3:~/joomla# tree -L 1.|-- code|-- database`-- docker-compose.yml2 directories, 1 file

•database 即为数据库目录

•code 即为站点目录,包括网页的代码数据

Joomla 作为内容管理系统的个人使用就是上面的这些了,主要感觉编辑器比较传统,网站主题界面都比较老旧,不符合现代审美,可能需要更多的调整,其他更多的功能和配置就需要自行探索了。

四、总结

云服务器为 Docker 项目提供了灵活、可扩展的部署环境。推荐使用华为云 Flexus 云服务器 X 实例,可以根据项目需求选择合适的配置。例如,对于个人小项目,可以选用配置较低的入门级实例;对于高并发、大数据处理等场景,则可以选择高性能的计算型实例。此外,这些云服务商还提供了丰富的云产品生态,如负载均衡、数据库、存储等,可以帮助你快速搭建完整的应用架构。

此次使用的 Flexus X 实例配置还是很高的 4 核 12G-100G-3M 规格的基础模式,部署的 Joomla 使用体验很完美,能充分发挥云计算的强大优势,云服务器弹性伸缩能力强,可根据网站访问量自动调整资源配置,保证网站始终保持流畅运行,确保博客的顺畅运行,为使用者提供无忧的博客创作和分享体验。主要是 Joomla 的 UI 设计没有达到预期,没有体验下去的欲望了。

华为云正在举行 828 B2B 企业节,无疑为寻求性价比的用户提供了一个绝佳的机会机享受到高性能的计算资源和支持。把握这次机会,不仅可以节省成本,更能为您的业务增长注入强劲动力。快来体验华为云带来的无限可能吧!立即体验

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 管理系统
    +关注

    关注

    1

    文章

    2521

    浏览量

    35951
  • 华为云
    +关注

    关注

    3

    文章

    2566

    浏览量

    17465
收藏 人收藏

    评论

    相关推荐

    华为云 Flexus 云服务器 X 实例之 openEuler 系统部署 emlog 轻量级博客平台

    服务器不仅提供了稳定可靠的服务,还拥有灵活的资源配置选项,极大地满足了不同业务场景的需求。在这样的强大平台上,部署如 Emlog 这般快速稳定的轻量级博客及 CMS 建站系统,将成为打造高效云端内容管理
    的头像 发表于 01-03 09:20 114次阅读
    华为云 Flexus 云服务器 X 实例之 openEuler <b class='flag-5'>系统</b>下<b class='flag-5'>部署</b> emlog 轻量级博客平台

    设备全生命管理系统包括哪些内容

    设备全生命管理系统以数据驱动,全面覆盖设备全生命周期,实现设备信息的实时掌控、精准决策,助力企业降本增效,开启智能化设备管理的新篇章。
    的头像 发表于 01-02 10:23 58次阅读
    设备全生命<b class='flag-5'>管理</b><b class='flag-5'>系统</b>包括哪些<b class='flag-5'>内容</b>?

    详细介绍智慧工地管理系统的主要内容

    系统的主要内容,以帮助您更好地理解其功能和应用。         一、质量管理         在建筑工程中,质量是首要关注点。智慧工地管理系统
    的头像 发表于 12-11 10:25 161次阅读

    AI模型部署管理的关系

    AI模型的部署管理是AI项目成功的两大支柱,它们之间既相互独立又紧密相连,共同推动着AI技术从实验室走向实际应用。
    的头像 发表于 11-21 10:02 165次阅读

    东识民兵档案管理系统

    管理系统
    jf_72884372
    发布于 :2024年08月16日 09:44:10

    智能水电表管理系统支持本地私有化部署吗?

    智能水电表管理系统,作为智慧城市建设中的关键组件,正逐步改变着能源计量与管理的传统模式。面对日益增长的数据安全需求及特定行业的合规性考量,越来越多的企业和机构开始关注系统的本地私有化
    的头像 发表于 08-12 20:32 283次阅读
    智能水电表<b class='flag-5'>管理</b><b class='flag-5'>系统</b>支持本地私有化<b class='flag-5'>部署</b>吗?

    集成管理系统包括哪些内容

    今信息化高度发达的环境下,企业面临着海量的数据和信息,以及各种异构系统之间的互联互通需求,因此搭建一个高效的集成管理系统显得尤为重要。一个综合性的集成管理
    的头像 发表于 07-24 09:40 317次阅读

    鸿蒙实战开发-本地部署、SmartPerf 编译部署指导文档

    telnet [部署机器ip地址] 9000。 如果显示端口连接失败 可能是防火墙未对9000 端口放开即可。 最后 如果大家觉得这篇内容对学习鸿蒙开发有帮助,我想邀请大家帮我三个小忙: 点赞,转发,有
    发表于 05-09 14:23

    警用物资装备管理系统

    管理系统
    jf_72884372
    发布于 :2024年05月06日 10:11:27

    WMS仓库管理系统介绍

    MES系统管理系统
    h1710143100.8307
    发布于 :2024年04月17日 11:27:57

    蒙牛集团部署EAM设备管理系统 完成数据互联实现资产全生命周期管理

    作为中国乳业“国家队”,蒙牛集团深刻了解智能制造在奶业振兴中的关键意义。2023年,蒙牛决心搭建精益化、信息化设备管理平台,由集团统一部署实施,在常温33家工厂逐步建设部署“EAM 设备管理
    的头像 发表于 04-07 10:13 601次阅读

    处理器多架构部署的优势有哪些?

    Web 服务器、搜索引擎和内容管理系统等位于企业云基础设施前端的应用程序,是引入可扩展、高能效 arm64 架构的理想对象。
    发表于 03-15 14:39 429次阅读
    处理器多架构<b class='flag-5'>部署</b>的优势有哪些?