●【docker】almalinuxを使ってapacheでphpを表示する

dockerの勉強中。

centosが死んでいるので、後継機としてalmalinuxを使う

まずは、基本としてapacheでphpファイルを表示するまでをやってみた。

★フォルダ構成

docker_almalinux_httpd
– web
— Dockerfile
– www
— index.php
– docker-compose.yml

★docker-compose.yml

services:
web:
build:
context: ./web
ports:
- 8081:80
volumes:
- ./www:/var/www/

privileged: true # 全権限を付与
stdin_open: true # シェルを使えるように
tty: true # ターミナル許可
command: /sbin/init

#almalinuxでhttpdでphpを表示できます
#起動コマンド:docker-compose up –build -d

★Dockerfile

FROM almalinux:9.6

RUN dnf update -y
RUN dnf install -y httpd
RUN dnf install -y php

# Apacheの自動起動設定
RUN systemctl enable httpd

# httpd.conf設定
RUN sed -i 's/^DocumentRoot "\/var\/www\/html"$/DocumentRoot "\/var\/www\/"/g' /etc/httpd/conf/httpd.conf

あとはビルドするだけ

docker-compose up –build -d

これでブラウザアクセスで
http://localhost:8081/index.php

これで
「test php」と表示されるはず!


privileged: true # 全権限を付与
stdin_open: true # シェルを使えるように
tty: true # ターミナル許可
command: /sbin/init


この4行ですが、おまじないと思って、docker-compose.ymlには書いておいてください。
基本セットみたいなもん。

almalinuxのバージョン指定もやってね。

年々新しいバージョンが出るので、数年後には動かなくなるかもなので

「RUN systemctl enable httpd」

をする事で自動でhttpdがスタートします。

コメント