使用Docker Swarm 搭建Wordpress的方法
起因
我曾經(jīng)把 wordpress 搭建在 Vultr 上,但是因?yàn)楸娝苤脑?,這個(gè)地方訪問(wèn)越來(lái)越慢。再后來(lái)我選擇了新浪云,新浪云的確夠便宜,也很不錯(cuò),但是要備案,還有評(píng)論功能估計(jì)要閹割,想想還是算了,找個(gè)香港的主機(jī)搭建 wordpress 即可。
購(gòu)買(mǎi)主機(jī)
我這里選擇的是阿里云的輕量應(yīng)用服務(wù)器,這個(gè)主機(jī)的好處就是便宜,夠用。
比如我選擇的香港的主機(jī),一個(gè)月只需要 24 塊錢(qián),一核心一G內(nèi)存,網(wǎng)速為 30Mbps,磁盤(pán)空間 25GB,月流量 1TB。
配置如下圖
初始化 docker 環(huán)境
雖然上面有一件安裝wordpress的功能,但是我不推薦,因?yàn)榕渲枚继狭?br/>最終我選擇的是 ubuntu18.04 系統(tǒng),直接用下面的命令即可完成安裝 docker 并且初始化 docker swarm
curl -o- -L https://gist.githubusercontent.com/hangox/e679464f35dc2a78920e6249a21d7958/raw/c5541e38979dca1e3e1e9704ad171ed2f0556fa1/ubunut-install-docker.sh | bash
編寫(xiě) docker-compose
配置一覽
version: '3.7' services: caddy: image: abiosoft/caddy ports: - 80:80 - 443:443 environment: - ACME_AGREE=true - TZ=Asia/Shanghai volumes: - caddy:/root/.caddy - wp-src:/usr/src/wordpress configs: - source: wp_caddy target: /etc/Caddyfile app: image: wordpress:5.4.1-php7.2-fpm environment: TZ: Asia/Shanghai WORDPRESS_DB_HOST: wp_db:3306 WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: yourpassword WORDPRESS_DB_NAME: wordpress depends_on: - db volumes: - wordpress:/var/www/html - wp-src:/usr/src/wordpress db: image: mysql:8 environment: TZ: Asia/Shanghai MYSQL_ROOT_PASSWORD: yourpassword MYSQL_DATABASE: wordpress command: --default-authentication-plugin=mysql_native_password volumes: - db:/var/lib/mysql volumes: wordpress: db: caddy: wp-src: configs: wp_caddy: external: true
配置解析
caddy
用來(lái)做反向代理,同時(shí)兼顧 https 證書(shū)申請(qǐng),配置如下
https://47log.com https://www.47log.com { root /usr/src/wordpress gzip fastcgi / wp_app:9000 php rewrite { if {path} not_match ^\/wp-admin to {path} {path}/ /index.php?_url={uri} } log stdout errors stderr }
這里我用到了 docker swarm 的 config 功能,直接把配置寫(xiě)入到 wp_caddy 這個(gè)配置中。
db
這里用的是 mysql8 , wordpress 是支持的,性能也要更好點(diǎn)
需要注意的,commmand 必須加上 command: --default-authentication-plugin=mysql_native_password 不然是沒(méi)辦法進(jìn)行密碼認(rèn)證的,我就是忘記加這個(gè)蛋疼了一陣子。
app
注意連接方式
如果你是用 docker stack 部署的,部署的是什么名字,數(shù)據(jù)庫(kù)連接那里就要加上名字的前綴。比如我這里是 docker stack deploy -c docker-compose.yml wp,我這里數(shù)據(jù)庫(kù)在 docker 網(wǎng)絡(luò)中的 host 就是 wp_db。如果你的 stack 名字為 wordpress , 就要對(duì)應(yīng)的改為 wordpress_db。
注意配置 volume
- wordpress:/var/www/html 這個(gè)東西一定要配置,上次我就是沒(méi)有配置這個(gè)東西,刪掉 container,主題直接沒(méi)有了。
使用 docker stack 部署
一行命令 docker stack deploy -c docker-compose.yml wp
等一段時(shí)間就能進(jìn)入 wordpress 了
為什么使用 docker swarm。 因?yàn)橛?portainer , docker-swarm 接入到 portainer 之后可以有全功能的配置能力。
到此這篇關(guān)于使用Docker Swarm 搭建Wordpress的方法的文章就介紹到這了,更多相關(guān)Docker Swarm搭建Wordpress內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。