前言
隨著云計算技術的不斷進步,華為云 Flexus 云服務器 X 實例憑借其專為中小企業和開發者定制的柔性算力特性,在眾多云服務產品中迅速崛起,以強勁的性能和出色的性價比贏得了廣泛的市場認可。這款服務器不僅提供了穩定可靠的服務,還擁有靈活的資源配置選項,極大地滿足了不同業務場景的需求。在這樣的強大平臺上,部署如 Emlog 這般快速穩定的輕量級博客及 CMS 建站系統,將成為打造高效云端內容管理系統的理想選擇。通過本文的詳盡步驟,讀者將能夠輕松完成 Emlog 的部署工作。借助華為云 Flexus X 實例的支持,用戶不僅可以實現快速部署,還能確保博客平臺的高性能運行,從而進一步探索其在實際應用中的無限潛力。
一、Flexus 云服務器 X 實例介紹
1.1 Flexus 云服務器 X 實例簡介
·官網地址:華為云Flexus云服務器X實例
華為云 Flexus 云服務器 X 實例是新一代面向中小企業和開發者的柔性算力云服務器。它能夠智能感知業務負載的變化,自動調整資源配置。這款服務器特別適用于中低負載的應用場景,例如電商直播、企業網站建設、開發測試環境、游戲服務器以及音視頻服務等。X 實例的設計理念旨在為用戶提供更加靈活和高效的計算資源管理方式。通過智能調整,它可以更好地滿足不同業務的需求,提高資源利用率。
1.2 Flexus 云服務器 X 實例特點
·提供豐富的公共鏡像:Flexus 云服務器 X 實例提供多種公共鏡像供用戶選擇,方便快速部署各種應用和服務。
·可靈活自定義 vCPU 內存配比:用戶可以根據自己的需要靈活調整虛擬 CPU 和內存的配比,以滿足不同場景的需求。
·智能感知業務動態升降配:Flexus 云服務器 X 實例能夠智能感知業務的負載情況,并根據需要自動升降配,以滿足業務的需求,提高系統的穩定性和性能。
·負載范圍更高:相對于 Flexus 應用服務器 L 實例,Flexus 云服務器 X 實例能夠處理更高的負載,適用于更復雜和繁忙的場景。
1.3 Flexus 云服務器 X 實例使用場景
Flexus 云服務器 X 實例針對不同的使用場景展現出其獨特的優勢:
1.電商直播:利用 X 實例搭建電商交易平臺,可以有效應對電商市場的瞬息萬變,從容處理業務壓力波動,確保交易過程順暢無阻。
2.企業建站:面向博客、論壇和企業門戶等應用場景,X 實例幫助企業高效傳播價值信息,促進信息共享與交流,支持構建多功能傳播和交互平臺。
3.個人開發測試:開發者在開發和測試過程中所需的環境資源可以通過 X 實例便捷獲取,不僅提高了搭建效率,而且降低了成本。
4.游戲服務器:適用于搭建游戲后臺服務器,強大的計算能力可以輕松應對大量玩家同時在線的情況,同時支持平滑擴容,快速應對玩家數量增長的需求,以及提供出色的網絡加速能力以提升用戶體驗。
二、emlog 介紹
2.1 emlog 簡介
emlog 是一款快速穩定的輕量級博客及 CMS 建站系統,旨在打造一個好用的云端內容管理系統。
2.2 emlog 主要特點
·Markdown 編輯器:內置 Markdown 編輯器,能自動保存,讓創作過程更舒適高效。
·多用戶角色:支持多種用戶角色,提供用戶注冊和登錄功能,方便讀者和作者的互動。
·多媒體資源管理器:內置多媒體資源管理器,方便上傳、管理圖片、音頻、視頻和文件等多種媒體資源。
·模板主題:應用商店提供多種模板主題,使用戶可以輕松打造獨具個性的站點。
·插件生態:擁有強大的插件擴展系統,可以快速擴展站點功能,滿足特定需求。
·強大的 SEO 功能:支持文章 URL 自定義,可以定制站點及分類頁的 TDK,有助于提升站點在搜索引擎中的可見性。
·自定義側邊欄管理:提供靈活的側邊欄組件管理功能,讓用戶能夠自定頁面顯示的側邊欄內容。
·自定義頁面:支持創建自定義頁面,例如留言板、個人介紹等,幫助用戶打造更富有個性和功能的站點。
·標簽和分類:文章可以輕松歸類和標記,提供更好的信息組織和檢索功能。
2.3 emlog 使用場景
·個人博客:個人博主可以使用 Emlog 來記錄日常思考、分享技術心得或是生活點滴,借助其強大的 Markdown 編輯器和多媒體管理功能,輕松創建豐富的內容。
·企業官網:小型企業或創業公司可以利用 Emlog 快速搭建官方站點,通過自定義頁面功能添加公司介紹、產品展示、新聞動態等模塊,展示品牌形象。
·團隊協作平臺:項目團隊可以通過 Emlog 建立內部知識庫或對外的技術博客,利用多用戶角色管理功能,實現團隊成員間的信息共享和協同工作。
·教育資料庫:教育機構或個人教師可以使用 Emlog 構建在線課程平臺,發布教學資料、課程大綱及學習指南,同時利用評論系統增進師生交流。
·個人作品集:設計師、攝影師或其他創意工作者可以運用 Emlog 創建個人作品集網站,通過豐富的模板主題展示作品,吸引潛在客戶或雇主。
·行業資訊門戶:針對特定行業的愛好者或專業人士,可以建立垂直領域的資訊門戶,發布行業新聞、專業分析和技術趨勢,形成專業的交流社區。
三、本次實踐介紹
3.1 本次實踐簡介
1.本次實踐為個人測試學習環境,旨在快速部署應用,生產環境請謹慎;2.本次實踐環境為云華為云 Flexus 云服務器 X 實例,使用的操作系統為 openEuler 22.03 LTS;3.本次實踐在 Docker 環境下部署 emlog 輕量級博客平臺。
3.2 本次環境規劃
四、遠程連接華為云 Flexus 云服務器 X 實例
4.1 購買 Flexus 云服務器 X 實例
進入華為云官網:https://activity.huaweicloud.com/,登錄自己的華為云賬號,進入華為云首頁。
·可參考以下基礎配置,進行購買:
1.計費模式:包年/包月,這里選擇此模式;2.區域:華北—北京四,可用區:隨機即可;3.實例規格:關閉性能模式,選擇自定義,4vCPUs | 12GiB;4.鏡像:公共鏡像,Huawei Cloud EulerOS,版本,Huawei Cloud EulerOS 2.0 Standard 64 bit(10GiB);5.應用加速:這里選擇不加速;6.存儲:系統盤,通用型 SSD100G;7.網絡:選擇默認即可;8.安全組:選擇默認即可;9.彈性公網 IP:選擇“現在購買”,全動態 BGP,帶寬 3Mbit/s;10.云服務器名稱:可自定義設置,這里選擇默認的名稱;11.登錄憑證:自定義設置密碼;12.云備份:暫不購買;其余配置默認即可。
·確認配置及購買
在確認配置頁面,檢查 Flexus 云服務器 X 實例的各項配置是否正確。檢查完畢后,點擊“立即購買”。付款完畢后,華為云 Flexus 云服務器 X 實例購買成功。
4.2 查看 Flexus 云服務器 X 實例狀態
進入華為云 Flexus 云服務的控制臺,選擇 Flexus 云服務器 X 實例,可以看到已經正在運行的 Flexus 云服務器 X 實例。
4.3 使用 Xshell 遠程連接
·復制 Flexus 云服務器 X 實例的彈性公網 IP 地址
·主要填寫 Flexus 云服務器 X 實例的彈性公網 IP 地址,輸入其登錄用戶和密碼,連接即可。
五、檢查 Flexus 云服務器 X 實例系統環境
5.1 檢查操作系統版本
檢查 Flexus 云服務器 X 實例的操作系統版本,本次實踐選擇的版本為 openEuler 22.03 LTS
[root@flexusx-51a1 ~]# cat /etc/os-releaseNAME="openEuler"VERSION="22.03 LTS"ID="openEuler"VERSION_ID="22.03"PRETTY_NAME="openEuler 22.03 LTS"ANSI_COLOR="0;31"
5.2 檢查內核版本
檢查當前操作系統的內核版本,當前內核版本為 5.10.0-60.109.0.136.oe2203.x86_64。
[root@flexusx-51a1 ~]# uname -r5.10.0-60.109.0.136.oe2203.x86_64
5.3 檢查 Docker 版本
部署該項目需要提前安裝 Docker 環境,檢查 Docker 版本,當前安裝的 Docker 版本為26.1.3。
[root@flexusx-51a1 ~]# docker -vDocker version 26.1.3, build b72abbb
5.4 檢查 Docker 服務狀態
檢查 Docker 服務狀態,確保 Docker 服務正常。
[root@flexusx-51a1 ~]# systemctl status docker●docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)Active: active (running) since Wed 2024-09-04 21:23:44 CST; 15min agoTriggeredBy:●docker.socketDocs: https://docs.docker.comMain PID: 10018 (dockerd)Tasks: 10Memory: 196.3MCGroup: /system.slice/docker.service└─10018 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
5.5 檢查 Docker compose 版本
檢查 docker compose 版本,當前默認安裝版本為 v2.29.1。
[root@flexusx-51a1 ~]# docker compose versionDocker Compose version v2.27.0
六、部署 emlog 系統
6.1 下載 emlog 鏡像
執行以下命令,下載 emlog 相關鏡像。
docker pull mysql:8.0docker pull emlog/emlog:pro-php8.1docker pull nginx:alpinedocker pull redis
6.2 創建部署目錄
執行以下命令,創建項目部署目錄/data/emlog/。
mkdir -p /data/emlog/ && cd /data/emlog/
6.3 拉取項目源碼
執行以下命令,拉取 emlog 項目源碼。
git clone https://github.com/emlog/emlog.git
查看 emlog 項目內容,可以看到內容如下:
[root@flexusx-51a1 emlog]# tree -L 2 ./emlog/./emlog/├──admin│??├──account.php│??├──article.php│??├──article_save.php│??├──auth.php│??├──blogger.php│??├──comment.php│??├──data.php│??├──editor.md│??├──globals.php│??├──index.php│??├──link.php│??├──media.php│??├──navbar.php│??├──page.php│??├──plugin.php│??├──plugin_user.php│??├──setting.php│??├──sort.php│??├──store.php│??├──tag.php│??├──template.php│??├──twitter.php│??├──upgrade.php│??├──user.php│??├──views│??└──widgets.php├──auto_install.json├──config.sample.php├──content│??├──backup│??├──cache│??├──plugins│??├──templates│??└──uploadfile├──docker-compose.yml├──favicon.ico├──import.sql├──include│??├──controller│??├──lib│??├──model│??└──service├──index.php├──init.php├──install.php├──license.txt├──nginx.conf├──README.md├──robots.txt└──rss.php14 directories, 37 files
6.4 修改配置文件
·進入 emlog 項目目錄
[root@flexusx-51a1 emlog]# lsadmin config.sample.php docker-compose.yml import.sql index.php install.php nginx.conf robots.txtauto_install.json content favicon.ico include init.php license.txt README.md rss.php
·復制 config.sample.php 并命名為 config.php
cp config.sample.php config.php
·修改 config.php 文件,內容如下:
6.5 修改權限
由于測試環境下,直接修改 emlog 項目的所有目錄及文件為完全權限。如果不修改權限,后面的初始化安裝會報錯。
chmod -R 777 /data/emlog/
6.6 查看 docker-compose.yml 文件
執行以下命令,創建名為 emlog_network 的 Docker 網絡。
docker network create emlog_network
本次使用使用 docker compose 方式部署,emlog 項目中已經為我們提供了 docker-compose.yml 文件。在部署文件中,我們可以自行修改宿主機的映射端口,注意防止端口沖突即可。
vim docker-compose.yml
version: '3'services:db:image: mysql:8.0container_name: mysqlcommand:- --default_authentication_plugin=mysql_native_password- --character-set-server=utf8mb4- --collation-server=utf8mb4_unicode_civolumes:- ./db_data/mysql:/var/lib/mysqlports:- "5506:3306"restart: alwaysenvironment:MYSQL_ROOT_PASSWORD: 12345678MYSQL_DATABASE: emlogMYSQL_USER: emlogMYSQL_PASSWORD: emlognetworks:- emlog_network# db:# image: mariadb:latest# container_name: mariadb# command:# - --default_authentication_plugin=mysql_native_password# - --character-set-server=utf8mb4# - --collation-server=utf8mb4_unicode_ci# - --sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,ONLY_FULL_GROUP_BY# volumes:# - ./db_data/mariadb:/var/lib/mysql# ports:# - "5506:3306"# restart: always# environment:# MARIADB_ROOT_PASSWORD: 12345678# MARIADB_DATABASE: emlog# MARIADB_USER: emlog# MARIADB_PASSWORD: emlog# networks:# - emlog_networkphp:image: emlog/emlog:pro-php8.1container_name: phpvolumes:- ./:/app/emlogworking_dir: /app/emlognetworks:- emlog_networkenvironment:EMLOG_ENV: developEMLOG_DB_HOST: dbEMLOG_DB_USER: emlogEMLOG_DB_NAME: emlogEMLOG_DB_PASSWORD: emlognginx:image: nginx:alpinecontainer_name: nginxvolumes:- ./:/app/emlog- ./nginx.conf:/etc/nginx/conf.d/default.confports:- "8080:8080"networks:- emlog_networkdepends_on:- phpredis:image: redisnetworks:- emlog_networknetworks:emlog_network:external: true
·相關變量解釋:
6.7 創建 emlog 容器
執行以下命令,快速創建 emlog 容器。
[root@flexusx-51a1 emlog]# docker compose up -dWARN[0000] /data/emlog/emlog/docker-compose.yml: `version` is obsolete[+] Running 4/4?Container php Started 0.2s?Container emlog-redis-1 Started 0.2s?Container mysql Started 0.3s?Container nginx Started 0.4s
6.8 查看 emlog 容器狀態
檢查 emlog 容器狀態,確保 emlog 容器正常啟動。
[root@flexusx-51a1 emlog]# docker compose psWARN[0000] /data/emlog/emlog/docker-compose.yml: `version` is obsoleteNAME IMAGE COMMAND SERVICE CREATED STATUS PORTSemlog-redis-1 redis "docker-entrypoint.s…" redis About a minute ago Up About a minute 6379/tcpmysql mysql:8.0 "docker-entrypoint.s…" db About a minute ago Up About a minute 33060/tcp, 0.0.0.0:5506->3306/tcp, :::5506->3306/tcpnginx nginx:alpine "/docker-entrypoint.…" nginx About a minute ago Up About a minute 80/tcp, 0.0.0.0:8080->8080/tcp, :::8080->8080/tcpphp emlog/emlog:pro-php8.1 "docker-php-entrypoi…" php About a minute ago Up About a minute 9000/tcp
七、訪問前準備工作
7.1 關閉防火墻
執行以下命令,關閉防火墻。
systemctl stop firewalld && systemctl disable firewalld
執行以下命令,關閉 selinux。
setenforce 0sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
7.2 Flexus 云服務器 X 實例安全組配置
進入 Flexus 云服務器 X 實例控制臺,進行安全組規則配置。在安全組入方向規則上,放行 8080 端口。
八、emlog 的初始化安裝
8.1 訪問 emlog 初始頁
瀏覽器訪問地址:http://彈性公網 IP 地址:8080,將 IP 替換為自己服務器 IP 地址。瀏覽器打開后,進入 emlog 初始頁。
8.2 設置管理員賬號
自定義設置管理員登錄賬號密碼和郵箱地址信息,點擊“開始安裝”即可。
8.3 刪除 install.php 文件
初始化安裝成功后,會提示刪除 install.php 文件。
根據提示,刪除 install.php 文件。
[root@flexusx-51a1 emlog]# lsadmin config.php content docker-compose.yml import.sql index.php install.php nginx.conf robots.txtauto_install.json config.sample.php db_data favicon.ico include init.php license.txt README.md rss.php[root@flexusx-51a1 emlog]# rm -rf install.php
8.4 訪問 emlog 項目
瀏覽器地址:http://彈性公網 IP 地址:8080,可以訪問到 emlog 前臺首頁。
點擊右上角登錄,進入 emlog 后臺管理的登錄頁面。
輸入剛才設置的管理員賬號和密碼,訪問 emlog 后臺管理頁面。
九、使用 emlog 發布博文
9.1 發布文章
在文章編輯器中,我們使用 markdown 語法編輯博文后,點擊立即發布。
9.2 查看文章效果
我們回到 emlog 的前臺首頁,可以看到文章效果。
十、使用體驗與總結
在本次實踐中,我們成功地在華為云 Flexus 云服務器 X 實例上部署了 Emlog 系統,整個部署過程及后續使用體驗極為順暢。華為云 Flexus X 實例憑借其卓越的性價比、強大的計算性能、可靠的穩定性和高標準的安全保障,在眾多云服務選項中脫穎而出。其網絡連接始終保持穩定,操作過程中毫無延遲或卡頓,確保了高效的用戶體驗。Emlog 系統作為一個輕量級博客平臺,在華為云 Flexus X 實例的支持下,展現了其快速穩定的特點,使得內容創作與管理變得更加高效便捷。這種組合無疑為尋求可靠云解決方案的專業人士提供了一個理想的選項,值得每一位開發者和企業嘗試。
趁著華為云 828 B2B 企業節的熱潮,快來探索 Flexus X 實例的超值優惠,感受技術與創新的完美融合;從高性能計算到智能監控,每一個細節都彰顯出華為云對品質的堅持與追求;加入華為云大家庭,不僅是一次技術升級,更是向未來邁出的堅實一步;讓我們攜手并進,共創云端新輝煌!
審核編輯 黃宇
-
云服務器
+關注
關注
0文章
639瀏覽量
13372 -
華為云
+關注
關注
3文章
2566瀏覽量
17465
發布評論請先 登錄
相關推薦
評論