#バドシス 〜 日々のことを続く限り書いてみようと思って 〜

頑張って日々のことを書いていこうと思います。

MacOSにDockerを入れ、CAKEPHP2系の環境構築しました。

結構苦戦したので残しておこうかと。

 

事前準備:MacにDockerを入れる

macOSでDocker環境構築』を参考にすればOKです。

 

3の実行の部分まで確認すれば充分ですね。

 

作る環境

今回作る環境の詳細は以下。

色々古いだなんだのツッコミは受け付けませんwww

(仕事なんだ、察してくれ・・・w)

 

PHP 5.4

CAKEPHP 2.5.5

Apache/2.4.12

 

備考として、MySQLは接続先を共有しているのでConfigファイルに記載済。

MySQLの設定はここではやってないです。

 

Docker設定

CAKEPHPのモジュール直下に『docker-compose』というディレクトリを作ってます。

その直下で色々ファイルやらを置いていく感じですね。

docker-compose.yml

version: '3'
services:
web:
container_name: apache001
build: ./web
- "80:80"
volumes:
- ../../:/var/www/html:Z

 

web/Dockerfile

#FROM httpd:2.4
FROM php:5.4-apache
ADD ./httpd.conf /etc/apache2/apache2.conf
# mod_rewrite実行
RUN a2enmod rewrite
RUN apt-get update && docker-php-ext-install pdo_mysql mysqli mbstring
# log用ディレクトリ作成
RUN mkdir -p /var/log/logdir
RUN chmod 777 /var/log/logdir
COPY php.ini /usr/local/etc/php/

web/httpd.conf 

長いので差分だけ!

<Directory /var/www/html>
Options FollowSymLinks
AllowOverride ALL
Require all granted
</Directory>

web/php.ini

[Date]
date.timezone = "Asia/Tokyo"
[mbstring]
mbstring.internal_encoding = "UTF-8"
mbstring.language = "Japanese"
xdebug.remote_connect_back=true
xdebug.remote_enable=1

 

構築手順

## ファイルへ移動
cd /Users/username/cakephp/docker-compose/
## ビルド
docker-compose build
## 起動
docker-compose up -d
## 確認

おまけ、基本的なコマンドについて

Dockerでコマンドを叩くと色々『Command Not Found』だったり(汗)

ってことで良く使う、『zlib、OpenSSL、wget』をいれるコマンドになります。

 

# zlib取得
RUN cd /usr/local/src
RUN tar xvzf zlib-1.2.11.tar.gz
RUN cd zlib-1.2.11
RUN ./configure
RUN make
RUN make install

# openssl取得
RUN cd /usr/local/src
RUN tar xzvf openssl-1.1.0h.tar.gz
RUN cd openssl-1.1.0h
RUN ./config shared zlib
RUN make
RUN make install

# wget入手
RUN cd /usr/local/src
RUN tar xvzf wget-1.19.5.tar.gz
RUN cd wget-1.19.5
RUN ./configure --with-ssl=openssl
RUN make
RUN make install

 

感想

独自コマンドを覚える学習コストは多少ありますが、管理する上ではめちゃくちゃ便利だし、最悪書けるエンジニアがいれば設定ファイルをばらまくだけなのでかなり良いですね。

 

Wordpressの環境構築とかも挑戦してみようかな。