通過docker compose快速搭建wordpress

操作系統(tǒng)為linux吊宋,ubuntu系統(tǒng)挖藏。

適用場景為個人使用议惰、小范圍局域網(wǎng)內(nèi)使用揽咕。

安裝docker配置mirror

  • 安裝docker
    apt install -y docker.io
    可能還需要單獨安裝下docker-compose意狠。
    apt install -y docker-compose

docker compose和docker-compose的區(qū)別以后再說敞贡。
如果安裝完docker后,執(zhí)行docker compose或者docker-compose命令正常摄职,就不用安裝docker-compose誊役,否則就安裝一下。

  • 配置mirror
    因為dockerhub把中國給屏蔽了谷市,無法拉取dockerhub的鏡像蛔垢,因此需要配置一個國內(nèi)鏡像源。
    新建/修改docker配置文件/etc/docker/daemon.json迫悠,添加以下內(nèi)容
{
        "registry-mirrors":[
                "https://dockerproxy.com",
                "https://docker.mirrors.ustc.deu.cn",
                "https://docker.nju.edu.cn"
        ]
}

然后重啟docker鹏漆。systemctl restart docker

啟動wordpress

  1. 此處獲取yaml,內(nèi)容如下
services:
  db:
    # We use a mariadb image which supports both amd64 & arm64 architecture
    image: mariadb:10.6.4-focal
    # If you really want to use MySQL, uncomment the following line
    #image: mysql:8.0.27
    command: '--default-authentication-plugin=mysql_native_password'
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=somewordpress
      - MYSQL_DATABASE=wordpress
      - MYSQL_USER=wordpress
      - MYSQL_PASSWORD=wordpress
    expose:
      - 3306
      - 33060
  wordpress:
    image: wordpress:latest
    volumes:
      - wp_data:/var/www/html
    ports:
      - 80:80
    restart: always
    environment:
      - WORDPRESS_DB_HOST=db
      - WORDPRESS_DB_USER=wordpress
      - WORDPRESS_DB_PASSWORD=wordpress
      - WORDPRESS_DB_NAME=wordpress
volumes:
  db_data:
  wp_data:

新建目錄创泄,將上述內(nèi)容寫入docker-compose.yaml文件艺玲,如放在~/wordpress/docker-compose.yaml文件中。

  1. 啟動wordpress
    cd ~/wordpress; docker compose up -d
    cd ~/wordpress; docker-compose up -d
  2. 停止wordpress
    docker compose downdocker-compose down
  3. 訪問配置wordpress
    執(zhí)行docker ps命令鞠抑,可以看到容器已經(jīng)啟動饭聚,并暴露了80端口,就可以直接在瀏覽器訪問wordpress了搁拙。
    image.png

    在本機的話秒梳,直接在瀏覽器輸入localhost就可以訪問到wordpress。
    image.png

數(shù)據(jù)備份與恢復(fù)

docker compose只能單機部署箕速,我們前面部署的wordpress使用的存儲都是存儲在本地磁盤酪碘,存在丟數(shù)據(jù)的風(fēng)險,因此建議定期備份盐茎。

從前面的配置文件可以看到我們定義了2個volume兴垦,分別是 db_data和wp_data,執(zhí)行docker volume ls命令就可以看到

image.png

可以看到volume的名字前面加上了wordpress_前綴,因為docker-compose.yaml文件是在wordpress目錄下探越。

備份

  • docker volume在主機上的位置為/var/lib/docker/volumes/(可以通過docker volume inspect xx查看)狡赐。
    image.png

    如果有訪問權(quán)限的,可以直接將這2個文件定時打包備份到其他地方扶关。
cd /var/lib/docker/volumes;
tar -zcf wordpress.tar.gz wordpress_db_data wordpress_wp_data

恢復(fù)

  • 如果你是直接打包的主機上的目錄数冬,則將備份文件恢復(fù)到對應(yīng)的目錄节槐。
cd /var/lib/docker/volumes;
tar -zxf wordpress.tar.gz;
docker volume create wordpress_db_data; # 需要重新創(chuàng)建名為#volume-name#的volume
docker volume create wordpress_wp_data;
  • 如果沒有目錄的訪問權(quán)限,則需要通過容器來恢復(fù)拐纱。

高可用部署

前面的部署方案铜异,都是單節(jié)點部署,只能用于非生產(chǎn)使用秸架;如果有高可用的需求揍庄,建議上docker swarm或者k8s,給容器配置健康檢查东抹;并打散到多個節(jié)點蚂子;通過nginx做流量分發(fā);并使用外部存儲缭黔。

Docker Compose主要用于在單個主機上部署和管理多個容器食茎,通常用于開發(fā)和測試環(huán)境。它提供了一種簡單的方式來定義和運行多個相互關(guān)聯(lián)的容器馏谨,并可以通過一個命令來啟動别渔、停止、構(gòu)建和管理這些容器惧互。

Docker Swarm則是一個用于在多個主機上部署和管理多個容器的工具哎媚。它允許用戶將多個Docker主機組合成一個虛擬的容器集群,并使用一個統(tǒng)一的API來管理這些容器喊儡。Docker Swarm可以用于生產(chǎn)環(huán)境中拨与,并提供了高可用性和容錯性的功能。

一個簡單的部署架構(gòu)方案參考艾猜。


image.png

nginx與外部交互使用https協(xié)議截珍,nginx之后的交互使用http協(xié)議。

主題推薦

https://cloud.tencent.com/developer/article/2008499
https://github.com/solstice23/argon-theme

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末箩朴,一起剝皮案震驚了整個濱河市岗喉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌炸庞,老刑警劉巖钱床,帶你破解...
    沈念sama閱讀 217,277評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異埠居,居然都是意外死亡查牌,警方通過查閱死者的電腦和手機事期,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來纸颜,“玉大人兽泣,你說我怎么就攤上這事⌒菜铮” “怎么了唠倦?”我有些...
    開封第一講書人閱讀 163,624評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長涮较。 經(jīng)常有香客問我稠鼻,道長,這世上最難降的妖魔是什么狂票? 我笑而不...
    開封第一講書人閱讀 58,356評論 1 293
  • 正文 為了忘掉前任候齿,我火速辦了婚禮,結(jié)果婚禮上闺属,老公的妹妹穿的比我還像新娘慌盯。我一直安慰自己,他們只是感情好掂器,可當(dāng)我...
    茶點故事閱讀 67,402評論 6 392
  • 文/花漫 我一把揭開白布润匙。 她就那樣靜靜地躺著,像睡著了一般唉匾。 火紅的嫁衣襯著肌膚如雪孕讳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評論 1 301
  • 那天巍膘,我揣著相機與錄音厂财,去河邊找鬼。 笑死峡懈,一個胖子當(dāng)著我的面吹牛璃饱,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播肪康,決...
    沈念sama閱讀 40,135評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼荚恶,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了磷支?” 一聲冷哼從身側(cè)響起谒撼,我...
    開封第一講書人閱讀 38,992評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎雾狈,沒想到半個月后廓潜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,429評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,636評論 3 334
  • 正文 我和宋清朗相戀三年辩蛋,在試婚紗的時候發(fā)現(xiàn)自己被綠了呻畸。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,785評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡悼院,死狀恐怖伤为,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情据途,我是刑警寧澤绞愚,帶...
    沈念sama閱讀 35,492評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站昨凡,受9級特大地震影響爽醋,放射性物質(zhì)發(fā)生泄漏蚁署。R本人自食惡果不足惜便脊,卻給世界環(huán)境...
    茶點故事閱讀 41,092評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望光戈。 院中可真熱鬧哪痰,春花似錦、人聲如沸久妆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽筷弦。三九已至肋演,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間烂琴,已是汗流浹背爹殊。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留奸绷,地道東北人梗夸。 一個月前我還...
    沈念sama閱讀 47,891評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像号醉,于是被迫代替她去往敵國和親反症。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,713評論 2 354

推薦閱讀更多精彩內(nèi)容