PHP的环境需要安装额外的扩展,所以编写成Dockerfile
,内容如下
FROM php:8.1.6-fpm
RUN pecl install redis
RUN docker-php-ext-enable redis
同目录下创建docker-compose.yml
,内容如下
version: "3"
services:
nginx:
image: nginx
ports:
- "80:80"
restart: always
volumes:
- /home/lnmp/nginx/nginx.conf:/etc/nginx/nginx.conf
- /home/lnmp/nginx/conf/:/etc/nginx/conf.d/
- /home/lnmp/nginx/apps/:/usr/share/nginx/html/
- /home/lnmp/nginx/logs/:/var/log/nginx/
mariadb:
image: mariadb
ports:
- "3306:3306"
restart: always
environment:
- MARIADB_ROOT_PASSWORD=123456
volumes:
- /home/lnmp/mariadb/conf/:/etc/mysql/conf.d/
- /home/lnmp/mariadb/data/:/var/lib/mysql/
redis:
image: redis
ports:
- "6379:6379"
restart: always
volumes:
- /home/lnmp/redis/data/:/data
- /home/lnmp/redis/conf/:/usr/local/etc/redis/
php:
depends_on:
- nginx
- mariadb
- redis
build: .
ports:
- "9000:9000"
restart: always
volumes:
- /home/lnmp/php/conf/etc/:/usr/local/etc/
- /home/lnmp/nginx/apps/:/home/lnmp/nginx/apps/
最后编译并运行即可
docker compose build
docker compose up