====== PHP ======
[[https://www.php.net/|PHP]]
===== 环境搭建 =====
==== 纯 PHP 运行环境 ====
可使用 [[docker|Docker]] 进行配置
services:
php:
image: php:8.4-apache
container_name: php
restart: unless-stopped
volumes:
- ./app:/var/www/html
networks:
- web
随后启动容器
docker compose up -d
==== 搭配数据库等使用 ====
如需搭配数据库等使用,则需通过 Dockerfile 来构建镜像。例如
''.env'' 文件用于存放环境变量
DB_DATABASE=db
DB_USER=user
DB_ROOT_PASSWORD=root_password
DB_PASSWORD=password
''Dockerfile'' 文件用于安装 PHP 拓展
FROM php:8.4-apache
RUN docker-php-ext-install pdo_mysql
services:
php:
build: .
container_name: php
restart: unless-stopped
volumes:
- ./app:/var/www/html
environment:
DB_HOST: db
DB_NAME: ${DB_DATABASE}
DB_USER: ${DB_USER}
DB_PASSWORD: ${DB_PASSWORD}
depends_on:
- db
networks:
- web
- net-int
db:
image: mariadb:11
container_name: db
restart: unless-stopped
environment:
MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
MARIADB_DATABASE: ${DB_DATABASE}
MARIADB_USER: ${DB_USER}
MARIADB_PASSWORD: ${DB_PASSWORD}
volumes:
- ./db:/var/lib/mysql
networks:
- net-int
networks:
web:
external: true
net-int:
internal: true
此时,首次启动(或 ''Dockerfile'' 有任何更改)时需要构建容器
docker compose up -d --build
后续直接启动容器即可
docker compose up -d