欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker?Compose搭建Wordpress服務(wù)實(shí)現(xiàn)詳解

 更新時(shí)間:2023年03月10日 15:58:04   作者:夢(mèng)想實(shí)現(xiàn)家_Z  
這篇文章主要為大家介紹了Docker?Compose搭建Wordpress服務(wù)實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

前言

最近在研究wordpress獨(dú)立建站,在項(xiàng)目部署的時(shí)候也踩了一些坑,為了避免再次踩坑,特此通過(guò)此文章記錄一下。

編寫(xiě)docker-compose.yaml

此次建站采用的是docker compose的方式來(lái)部署wordpress項(xiàng)目,我們可以進(jìn)入DockerHub官網(wǎng)找到wordpress鏡像:

根據(jù)官方文檔提供的信息,最終我們可以編寫(xiě)出如下docker-compose.yaml:

version: "3.1"
services:
  wordpress:
    image: wordpress:php8.2-apache
    restart: always
    ports:
      - "80:80"
    depends_on:
      - mysql
    environment:
      WORDPRESS_DB_HOST: mysql-server
      WORDPRESS_DB_USER: 數(shù)據(jù)庫(kù)用戶名
      WORDPRESS_DB_PASSWORD: 數(shù)據(jù)庫(kù)密碼
      WORDPRESS_DB_NAME: 數(shù)據(jù)庫(kù)名稱
      WORDPRESS_TABLE_PREFIX: wp_
    volumes:
      - "/usr/share/zoneinfo/Asia/Shanghai:/etc/localtime"        #設(shè)置系統(tǒng)時(shí)區(qū)
      - "/usr/share/zoneinfo/Asia/Shanghai:/etc/timezone"  #設(shè)置時(shí)區(qū)
      - "./wordpress/html:/var/www/html"
  mysql-server:
    image: "mysql"
    volumes:
      - "/usr/share/zoneinfo/Asia/Shanghai:/etc/localtime"        #設(shè)置系統(tǒng)時(shí)區(qū)
      - "/usr/share/zoneinfo/Asia/Shanghai:/etc/timezone"  #設(shè)置時(shí)區(qū)
      # 配置文件
      - "./mysql/conf:/etc/mysql/conf.d"
      # 數(shù)據(jù)文件
      - "./mysql/datadir:/var/lib/mysql"
      # 日志文件
      - "./mysql/logs:/logs"
    ports:
      - "3306:3306"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 數(shù)據(jù)庫(kù)密碼
    command: --default-authentication-plugin=mysql_native_password

注意點(diǎn)

鏡像的選擇

DockerHub官網(wǎng)中,我們可以看到有很多不同版本的鏡像,比如php8.2-fpm-alpine、fpm-alpine、cli-php8.2php8.2-apache等等,我們最終要選擇的是帶有web服務(wù)的鏡像,也就是類(lèi)似`php8.2-apache版本號(hào),后面接-apachetag;

如果選擇的鏡像不帶web服務(wù),那么即使容器啟動(dòng)成功了,瀏覽器訪問(wèn)的時(shí)候也是不會(huì)有響應(yīng)結(jié)果的;

另外一點(diǎn)就是不要選擇默認(rèn)的latest,如果鏡像版本有更新,可能會(huì)造成線上版本不兼容的問(wèn)題;

環(huán)境變量的配置

從官方文檔來(lái)看,是建議我們?cè)谂渲弥型ㄟ^(guò)環(huán)境變量的方式來(lái)配置目標(biāo)數(shù)據(jù)庫(kù)的;即使不配置目標(biāo)數(shù)據(jù)庫(kù),在項(xiàng)目啟動(dòng)后的安裝引導(dǎo)上也會(huì)提示我們配置數(shù)據(jù)庫(kù),但是可能會(huì)出現(xiàn)無(wú)法訪問(wèn)localhost的情況;

在上述配置中,WORDPRESS_DB_HOST的配置我們使用的是mysql,它對(duì)應(yīng)同一個(gè)網(wǎng)絡(luò)環(huán)境下的mysql實(shí)例,只有當(dāng)wordpress實(shí)例與mysql實(shí)例在同一個(gè)網(wǎng)絡(luò)環(huán)境下時(shí),這樣配置才會(huì)生效。否則我們需要通過(guò)公網(wǎng)ip或者域名來(lái)指定WORDPRESS_DB_HOST。

WORDPRESS_TABLE_PREFIX代表【數(shù)據(jù)表前綴】,可以根據(jù)需要設(shè)定;

volumes配置

我們?cè)诘谝淮蝿?chuàng)建wordpress實(shí)例時(shí),還不能配置"./wordpress/html:/var/www/html"這個(gè)映射。我們需要先創(chuàng)建一個(gè)wordpress實(shí)例,然后通過(guò)docker cp命令從wordpress實(shí)例中拷貝/var/www/html文件到宿主機(jī),上述配置"./wordpress/html:/var/www/html"就是我們把文件拷貝到宿主機(jī)的./wordpress/html下才添加的映射。

這樣做的好處在于,如果我們的代碼有任何的修改,都不會(huì)因?yàn)?code>wordpress宕機(jī)造成已經(jīng)修改的源代碼丟失;

以上就是Docker Compose搭建Wordpress服務(wù)實(shí)現(xiàn)詳解的詳細(xì)內(nèi)容,更多關(guān)于Docker Compose搭建Wordpress的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論