【Docker】 使用Docker-Compose 搭建基于 WordPress 的博客網站

本文將使用流行的博客搭建工具 WordPress 搭建一個私人博客站點。部署過程中使用到了 Docker 、MySQL 。站點搭建完成后經行了發布文章的體驗。

WordPress

WordPress 是一個廣泛使用的開源內容管理系統(CMS),用于構建和管理網站、博客和其他在線應用。它提供了一個用戶友好的界面和豐富的功能,使得創建和管理網站變得簡單且靈活。 WordPress 有如下特點和功能:

  1. 簡單易用: WordPress 提供直觀的用戶界面,使得創建、編輯和發布內容變得非常簡單。無需編寫代碼,用戶可以使用可視化編輯器創建頁面和文章,并通過簡單的操作進行內容管理。

  2. 可擴展性: WordPress 具有強大的插件和主題系統,允許用戶根據自己的需求擴展和定制網站。有數千個免費和付費的插件和主題可供選擇,用于添加新功能、改變外觀和樣式,以及增強網站的性能和安全性。

  3. 博客功能: WordPress 最初是一個專注于博客的平臺,因此在博客功能方面表現出色。它提供了強大的文章管理、分類、標簽、評論和 RSS 訂閱等功能,使得創建和管理博客變得輕松。

  4. 多用戶支持: WordPress 支持多用戶功能,允許多個用戶在同一個網站上創建和管理內容。這使得 WordPress 成為團隊協作和多作者博客的理想選擇。

  5. SEO 優化: WordPress 通過優化網站結構、提供友好的 URL、自定義元標簽和集成 SEO 插件等功能,有助于提升網站在搜索引擎中的排名。

  6. 活躍的社區: WordPress 擁有龐大且活躍的社區支持,提供了豐富的文檔、論壇、博客和教程等資源。用戶可以從社區中獲取幫助、學習新技術和與其他 WordPress 用戶交流。

WordPress 是一個功能強大且靈活的內容管理系統,適用于各種類型的網站和在線應用。它的用戶友好性、可擴展性和豐富的插件生態系統,使得創建和管理網站變得更加簡單和便捷。

Docker-Compose

在自己喜歡的目錄下創建 wordpress 目錄,在其中創建 docker-compose.yml 文件,內容如下:

#  docker-compose.yml
version: '3'services:wordpress:image: wordpresscontainer_name: wordpressports:- "8080:80"environment:WORDPRESS_DB_HOST: mysql  # 因為 docker-compose 會自動把 mysql 的名字用做網絡標識,所以在連接數據庫的時候該字段就不需要手動指定 IP 地址了,直接用“service”的名字 mysql 就行了。WORDPRESS_DB_USER: wpWORDPRESS_DB_PASSWORD: 123456WORDPRESS_DB_NAME: wp_dbTZ: Asia/Shanghairestart: alwaysdepends_on:- mysqlmysql:image: mysql:5.7container_name: mysqlrestart: alwaysenvironment:MYSQL_ROOT_PASSWORD: 123456MYSQL_DATABASE: wp_dbMYSQL_USER: wpMYSQL_PASSWORD: 123456TZ: Asia/Shanghai

目錄結構如下:
在這里插入圖片描述

啟動服務

打開命令行工具,進去 wordpress 目錄,運行啟動命令: docker-compose up

效果如下:
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

注意:此過程執行前以提前拉取了 wordpress:latest 和 mysql:5.7 鏡像,命令如下:

docker pull wordpress
docker pull mysql:5.7

是否啟動正常

使用 docker ps 查看鏡像是否啟動

PS D:\apps-data\docker\wordpress> docker ps
CONTAINER ID   IMAGE       COMMAND                  CREATED         STATUS         PORTS                  NAMES
668c4a2c6690   wordpress   "docker-entrypoint.s…"   7 minutes ago   Up 7 minutes   0.0.0.0:8080->80/tcp   wordpress
b40a0f8e4a6f   mysql:5.7   "docker-entrypoint.s…"   7 minutes ago   Up 7 minutes   3306/tcp, 33060/tcp    mysql
PS D:\apps-data\docker\wordpress>

如果是在 win 上,使用了docker-desktop ,也可以在 docker-desktop 中查看服務狀態:

在這里插入圖片描述

最直接的方式是訪問 http://localhost:8080/ ,看服務是否能使用。如果啟動正常,將看到如下頁面:
在這里插入圖片描述

WordPress 后臺試用

wordpress 啟動正常后,第一次使用,需要進行初始化配置。

配置

  • 選擇語言
    在這里插入圖片描述

  • 錄入基本信息
    在這里插入圖片描述
    錄入完成后,點擊 安裝wordpress,等待安裝完成

  • 安裝完成
    在這里插入圖片描述

登錄

點擊安裝完成頁面中的 登錄 按鈕,進入登錄頁面。
在這里插入圖片描述
錄入信息,進行登錄。

進入后的頁面

初次進入后臺頁面,效果如下
在這里插入圖片描述

發布文章

在頁面左側找到文章編輯菜單
在這里插入圖片描述

點擊進入編輯,寫一篇文章

在這里插入圖片描述

點擊右上角的藍色【發布】按鈕即可進行發布,發布時會進行二次信息確認。

博客預覽體驗

退出登錄

訪問 http://localhost:8080/ 效果如下:

在這里插入圖片描述
可以看到,博客中共有兩篇文章,其中《世界,您好!》是wordpress初始化成功后,自動生成的,另一篇《我的第一篇博客》則是剛剛創建的。

點擊《我的第一篇博客》標題,即可進入博客詳情頁面。
在這里插入圖片描述

參考資料

  • wordpress docker
  • wordpress 官網

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/43512.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/43512.shtml
英文地址,請注明出處:http://en.pswp.cn/news/43512.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

單例設計模式精講(餓漢式和懶漢式實現的重要方法)

目錄 什么叫做單例模式? 餓漢式和懶漢式的區別? 餓漢式-方式1(靜態變量方式) 餓漢式-方式2(靜態代碼塊方式) 懶漢式-方式1(線程不安全) 懶漢式-方式2(線程安全&…

FifthOne:用于矢量搜索的計算機視覺接口

一、說明 數據太多了。數據湖和數據倉庫;廣闊的像素牧場和充滿文字的海洋。找到正確的數據就像大海撈針一樣!如果你喜歡開源機器學習庫 FiftyOne,矢量搜索引擎通過將復雜數據(圖像的原始像素值、文本文檔中的字符)轉換為稱為嵌入矢…

PHP報錯:未定義常量的解決方法!

PHP報錯:未定義常量的解決方法! 在PHP編程中,我們經常會遇到常量未定義的錯誤。這種錯誤通常會在代碼中使用未定義的常量時發生。本文將介紹常量的概念以及如何解決未定義常量的問題。 首先,讓我們來了解什么是常量。在PHP中&am…

大數據平臺運維實訓室建設方案

一、概況 本實訓室的主要目的是培養大數據平臺運維項目的實踐能力,以數據計算、分析、挖掘和可視化的案例訓練為輔助。同時,實訓室也承擔相關考評員與講師培訓考試、學生認證培訓考試、社會人員認證培訓考試、大數據技能大賽訓練、大數據專業課程改革等多項任務。 實訓室旨在培…

無人機跟隨一維高度避障場景--邏輯分析

無人機跟隨一維高度避障場景--邏輯分析 1. 源由2. 視頻3. 問題3.1 思維發散3.2 問題收斂 4. 圖示4.1 水平模式4.2 下坡模式4.3 上坡模式4.4 碰撞分析 5. 總結5.1 一維高度避障場景5.2 業界跟隨產品5.3 APM集成跟隨示意圖一:示意圖二:示意圖三&#xff1a…

Java算法_ 驗證二叉搜索樹(LeetCode_Hot100)

題目描述: 給你一個二叉樹的根節點 ,判斷其是否是一個有效的二叉搜索樹。root 有效 二叉搜索樹定義如下: 節點的左子樹只包含 小于 當前節點的數。 節點的右子樹只包含 大于 當前節點的數。 所有左子樹和右子樹自身必須也是二叉搜索樹。 獲得…

【TypeScript】tsc -v 報錯 —— 在此系統上禁止運行腳本

在 VS Code 終端中執行 tsc -v ,報錯 —— 在此系統上禁止運行腳本 然后 windows x ,打開終端管理員,出現同樣的問題 解決方法: 終端(管理員)執行以下命令: 出現 RemoteSigned 則代表更改成功…

11,模板泛化、模板特化、所占字節數、繼承實現模板展開、using循環命名展開可變參數

模板泛化、模板特化、所占字節數、繼承實現模板展開、using循環命名展開可變參數 模板泛化模板特化模板全特化通過模板偏特化獲取類型所占字節數通過模板偏特化和宏獲取類型所占字節數...ParamTypes和ParamTypes...的區別 通過繼承實現模板展開using 通過using循環命名的方式來…

開發一個文生圖的功能

文章目錄 效果開發環境原理核心代碼代碼倉庫問題效果 開發環境 Python 3.10PyCharm原理 借助開源項目stable-diffusion,通過該項目封裝python庫diffusers,可以輕易的實現文生圖的功能。 關于更多diffusers的功能請訪問:https://huggingface.co/docs/diffusers/index 核心代…

css樣式表屬性

文章目錄 css樣式表屬性colorbackground-colorfont-sizefont-weightfont-familyfont-styletext-decorationtext-indentline-height(line-height的概念)width、heightletter-spacingtext-aligndirectionwriting-modefont-variantborder-radiusopacitycursorvertical-alignmin-wi…

【數據結構與算法】十大經典排序算法-歸并排序

🌟個人博客:www.hellocode.top 🏰Java知識導航:Java-Navigate 🔥CSDN:HelloCode. 🌞知乎:HelloCode 🌴掘金:HelloCode ?如有問題,歡迎指正&#…

如何用輸入函數為數組賦值

在編寫程序時我們經常使用數組,而數組的大小可能是很大的但是我們并不需要為每個元素都自己賦值,我們可能會自定義輸入數組元素個數,我們應該如何實現通過輸入函數為數組賦值呢? 目錄 第一種: 第二種: 第一…

大數據bug-sqoop(二:sqoop同步mysql數據到hive進行字段限制。)

一:sqoop腳本解析。 #!/bin/sh mysqlHost$1 mysqlUserName$2 mysqlUserPass$3 mysqlDbName$4 sql$5 split$6 target$7 hiveDbName$8 hiveTbName$9 partFieldName${10} inputDate${11}echo ${mysqlHost} echo ${mysqlUserName} echo ${mysqlUserPass} ec…

OpenCV之remap的使用

OpenCV中使用remap實現圖像的重映射。 重映射是指將圖像中的某一像素值賦值到指定位置的操作:g(x,y) f ( h(x,y) ), 在這里, g( ) 是目標圖像, f() 是源圖像, 而h(x,y) 是作用于 (x,y) 的映射方法函數。為了完成映射過程, 需要獲得一些插值為…

TypeError: a bytes-like object is required, not ‘str‘

raceback (most recent call last): File "D:\pycharmcode\client.py", line 12, in <module> tcp_socket.send(send_data) TypeError: a bytes-like object is required, not str 使用socket進行ubuntu與windows通信時&#xff0c;發送數據時報了以上錯…

LeetCode 面試題 01.04. 回文排列

文章目錄 一、題目二、C# 題解 一、題目 給定一個字符串&#xff0c;編寫一個函數判定其是否為某個回文串的排列之一。 回文串是指正反兩個方向都一樣的單詞或短語。排列是指字母的重新排列。 回文串不一定是字典當中的單詞。 點擊此處跳轉題目。 示例1&#xff1a; 輸入&…

CSS3:圖片邊框

簡介 圖片也可以作為邊框&#xff0c;以下是實例演示 注意 實現該效果必須添加border樣式&#xff0c;且必須位于border-image-socure之前否則不會生效 實例 <html lang"en"><head><style>p {width: 600px;margin: 200px auto;border: 30px soli…

maven工具-maven的使用-鏡像倉庫、本地倉、IDEA使用maven

Maven 一、為什么使用maven 添加第三方jar包jar包之間的依賴關系處理jar包之間的沖突獲取第三方jar包將項目拆分成多個工程模塊實現項目的分布式部署 二、maven簡介 ? Maven項目對象模型(POM)&#xff0c;可以通過一小段描述信息來管理項目的構建&#xff0c;報告和文檔的…

2023.8 - java - 對象和類

public class Dog {String breed;int size;String colour;int age;void eat() {}void run() {}void sleep(){}void name(){} } 一個類可以包含以下類型變量&#xff1a; 局部變量&#xff1a;在方法、構造方法或者語句塊中定義的變量被稱為局部變量。變量聲明和初始化都是在方…

基于STM32標準庫智能風扇設計

目錄 一&#xff0c;前言 二&#xff0c;系統方案選擇 三&#xff0c;實體展示 工程分類 四&#xff0c;相關代碼 PWM.c PWM.h AD.c AD.h 電機驅動程序 舵機驅動 一&#xff0c;前言 當今生活中&#xff0c;風扇已成為人們解暑的重要工具&#xff0c;然而使用風扇緩解…