WordPress 主機 網站架設

[教學] DockerFile打造PHP環境,並手動安裝WordPress

梅干 2018/11/12

梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress

  透過Docker在佈署網站,相當的快速,甚至Docker Store中也有許多資源可使用,雖然說在Docker Store中就有WordPress的影像檔可利用,為何要這麼辛苦,自己手動安裝WordPress,其實最主要的原因就在於,Docker Store中的WordPress版本,則是以目前正式發布的為主,若要安裝測試的版本,那就得手動安裝才行。

而先前也曾分享過在MAC電腦,打造Docker的環境並安裝php的環境,因此只要再把MySQL裝上後,就可以安裝WordPress,理論流程是這子沒錯,但礙於WordPress的資料庫連線方式,在PHP7.0內建並不支援,因此就得特別再作擴充,才能正常的連線,所以這時就得自行打造DockerFile,自行建立PHP的環境與擴充,這樣就可以自行手動來安裝WordPress,或是任何的系統,至於要怎麼作,現在就一塊來看看吧!


Step1
首先,先將Dockerfiledocker-compose.ymlinfo.php放到網站根目錄下。
Dockerfile
FROM php:7.0-apache

install the PHP extensions we need

RUN set -ex;

savedAptMark="$(apt-mark showmanual)";

apt-get update;
apt-get install -y –no-install-recommends
libjpeg-dev
libpng-dev
;

docker-php-ext-configure gd –with-png-dir=/usr –with-jpeg-dir=/usr;
docker-php-ext-install gd mysqli opcache zip;

reset apt-mark's "manual" list so that "purge –auto-remove" will remove all build dependencies

apt-mark auto '.*' > /dev/null; \
apt-mark manual $savedAptMark; \
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
    | awk '/=>/ { print $3 }' \
    | sort -u \
    | xargs -r dpkg-query -S \
    | cut -d: -f1 \
    | sort -u \
    | xargs -rt apt-mark manual; \
\
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
rm -rf /var/lib/apt/lists/*

set recommended PHP.ini settings

see https://secure.php.net/manual/en/opcache.installation.php

RUN {
echo 'opcache.memory_consumption=128';
echo 'opcache.interned_strings_buffer=8';
echo 'opcache.max_accelerated_files=4000';
echo 'opcache.revalidate_freq=2';
echo 'opcache.fast_shutdown=1';
echo 'opcache.enable_cli=1';
} > /usr/local/etc/php/conf.d/opcache-recommended.ini

RUN a2enmod rewrite expires

VOLUME /var/www/html


docker-compose.yml
version: '3.1'

services: www: build: . restart: always ports: - 80:80 volumes: - ./:/var/www/html

db: image: mysql command: –default-authentication-plugin=mysql_native_password restart: always environment: MYSQL_ROOT_PASSWORD: root ports: - 3306:3306 volumes: - ./db:/var/lib/mysql adminer: image: adminer restart: always ports: - 8080:8080


info.php
<?php
phpinfo();
?>

梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step2
接著開啟終端機,輸入cd /網站目錄的路徑
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step3
進到網站目錄後,再輸入docker-compose up -d
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step4
當發布完畢後,再輸入dokcer ps時,分別就會看到mysqladminerphp三個container。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step5
接著再把WordPress5.0 Beta3放到網站目錄下。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step6
再開啟網頁,輸入127.0.0.1:8080就可登入資料庫的管理頁面,這時帳密都是root/root。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step7
接著建立一個新的資料庫。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step8
建立完畢後,再輸入127.0.0.1/wp目錄,接著先設定語系。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step9
再按衝吧!
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step10
這邊得特別注意到,在資料庫主機位址的地方,則是輸入db,而不是localhost或是127.0.0.1,得特別留意到。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step11
哈~順利與資料連接後,就可開裝安裝你的WordPress啦!
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step12
設定WordPress的網站名稱與帳密。
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress
Step13
鏘~鏘~完成!這樣就可搶先來體驗,新版WordPress5.0啦!
梅問題-[教學] DockerFile打造PHP環境,並手動安裝WordPress