目录
基于 Ubuntu 16.04 构建,一键自动安装最新版的 php7。
项目地址
GitHub : https://github.com/wangyan/docker-lnmp 国内镜像: https://git.wangyan.org/docker/lnmp
1.0分支为PHP5.6版本(不再维护)2.0分支是PHP7版本3.0主分支(master)使用docker-compose编排MySQL,nginx+phpfpm两个独立容器。(推荐)develop分支编排nginx,phpfpm,mysql三个独立容器。alpine分支使用alpine镜像编排三个独立容器。
Ubuntu 14.04 + nginx 1.x + php5.6/7.0 + MySQL 5.7.x
一、安装前准备
二、安装 LNMP
vim docker-compose.yml
2.1 docker-compose
bash
version: '2'
services:
mysql:
container_name: mysql
image: mysql:latest
environment:
- MYSQL_ROOT_PASSWORD=123456
volumes:
- /opt/lnmp/mysql_data:/var/lib/mysql
restart: always
phpfpm:
container_name: phpfpm
image: docker.wangyan.org/docker/php:alpine
ports:
- "9000:9000"
links:
- mysql
volumes:
- /opt/lnmp/public_html:/var/www/html
restart: always
nginx:
container_name: nginx
image: docker.wangyan.org/docker/nginx:alpine
ports:
- "80:80"
- "443:443"
links:
- phpfpm
volumes:
- /opt/lnmp/public_html:/var/www/html
- /opt/lnmp/nginx_sites:/etc/nginx/sites-enabled
restart: always参数说明:
MYSQL_ROOT_PASSWORD: 将123456换成你的MySQL Root密码volumes: 挂载左边是宿主机路径,右边是容器里的路径
2.2 运行 docker-compose
bash
docker-compose up -d2.3 nginx站点配置
vim /opt/lnmp/nginx_sites
text
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.html index.php;
location ~ .*\.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass phpfpm:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\. {
deny all;
access_log off;
log_not_found off;
}
}重启 nginx
bash
docker-compose restart nginx或者进入nginx容器后执行 sv restart nginx
三、了解更多
关于lnmp更多信息,请访问lnmp主页。http://www.wangyan.cloud/docker-lnmp
更多使用帮助请阅读wiki,其他问题欢迎在issues中反馈。