在Ubuntu上通过Docker实现LNMP容器化部署,可按以下步骤操作:
安装Docker
sudo apt update && sudo apt install docker.io
sudo systemctl start docker && sudo systemctl enable docker
拉取基础镜像
docker pull nginxdocker pull mysql:8.0(或指定版本)docker pull php:8.1-fpm创建自定义网络
docker network create lnmp-network
部署MySQL容器
docker run -d --name mysql --network lnmp-network \
-e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 \
-v /path/to/mysql/data:/var/lib/mysql mysql:8.0
(/path/to/mysql/data为宿主机数据存储路径,用于数据持久化)
部署PHP-FPM容器
docker run -d --name php-fpm --network lnmp-network \
-v /path/to/php/code:/var/www/html php:8.1-fpm
(/path/to/php/code为宿主机PHP代码路径)
部署Nginx容器
docker run -d --name nginx --network lnmp-network \
-p 80:80 -v /path/to/nginx.conf:/etc/nginx/nginx.conf nginx
(需在nginx.conf中配置反向代理至PHP-FPM,如fastcgi_pass php-fpm:9000)
验证部署
http://宿主机IP,若显示PHP信息页面,则配置成功。docker ps查看容器运行状态,docker logs查看日志。可选优化:
docker-compose.yml简化多容器管理()。-v参数挂载数据卷实现数据持久化。参考来源: