こんにちは!Takuya.B(@TB_IQ)です。
docker-composeでRockyLinux+Apache2.4+CentOS8の環境を作る方法です。
スポンサーリンク
Contents
ディレクトリ構成/必要なファイル
ディレクトリ構成
├── docker
│ └── Dockerfile
├── docker-compose.yml
└── html
docker-compose.yml
まず、 docker-compose.yml
の作成。
version: '3.7'
services:
web:
build: "./docker"
container_name: "rockylinux"
ports:
- 80:80
volumes:
- "./html:/var/www/html"
privileged: true
Dockerfile
FROM rockylinux/rockylinux:latest
RUN dnf -y update && dnf clean all
# apache2.4のインストール
RUN dnf -y install httpd
# php8のインストール
RUN dnf -y install epel-release
RUN dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
RUN dnf -y module install php:remi-8.0
RUN dnf -y install php php-devel php-mbstring php-pdo php-gd
# enable service.
RUN systemctl enable httpd
CMD ["/sbin/init"]
dockerを起動する
ファイル類の作成が完了したら、以下コマンドを入力してdockerを起動しましょう。
docker-compose up -d
ブラウザで確認する
ブラウザで http://localhost/ にアクセスし、上記画面が表示されれば環境構築は完了です。
503エラーが表示される場合の対処法
http://localhost/ にアクセスした際に以下の503エラーが表示されることがあります。
503 Service Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems.
Please try again later.
その場合は以下手順で解消します。
1. コンテナ内部に入る
まずはコンテナ内部に入ります。
docker exec -it rockylinux bash
# もしくは以下
docker-compose exec web bash
2. /etc/httpd/conf.modules.d/00-mpm.conf を編集する
以下コマンドを入力してviエディタを起動します。
vi /etc/httpd/conf.modules.d/00-mpm.conf
以下のmod_mpm_prefork.so
の行頭の#
を削除してコメント解除します。
#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
↓
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so:
次に以下のmod_mpm_event.so
の行頭に#
を記述してコメントアウトします。
LoadModule mpm_event_module modules/mod_mpm_event.so
↓
#LoadModule mpm_prefork_module modules/mod_mpm_event.so
ファイルを修正したら最後に以下コマンドを入力して、Apacheを再起動しましょう。
systemctl restart httpd
スポンサーリンク
あとがき
CentOSのサポート終了するけどCentOS Streamは使いたくないって方は是非とも参考にしてみてください!
というわけで、次回もよしなに!