在Ubuntu上通過Docker實現LNMP容器化部署,可按以下步驟操作:
安裝Docker
sudo apt update && sudo apt install docker.io
sudo systemctl start docker && sudo systemctl enable docker
拉取基礎鏡像
docker pull nginx
docker 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
參數掛載數據卷實現數據持久化。參考來源: