归档文章 (2011-2017)

date
2016/09/04
基于 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编排MySQLnginx+phpfpm两个独立容器。(推荐)
  • develop 分支编排nginxphpfpmmysql三个独立容器。
  • 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

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

docker-compose up -d

2.3 nginx站点配置

vim /opt/lnmp/nginx_sites
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
docker-compose restart nginx
或者进入nginx容器后执行 sv restart nginx

三、了解更多

关于lnmp更多信息,请访问lnmp主页。https://wangyan.org/docker-lnmp
更多使用帮助请阅读wiki,其他问题欢迎在issues中反馈。
If you have any questions, please contact me.