Skip to content

Latest commit

 

History

History
272 lines (168 loc) · 8.59 KB

README.cn.md

File metadata and controls

272 lines (168 loc) · 8.59 KB

LNMP Docker

GitHub stars GitHub release Build Status GitHub (pre-)release license

使用 Docker Compose 快速搭建 LNMP 环境。

本项目支持 x86_64 架构的 Linux,macOS,Windows 10 并且支持 arm 架构的 Debian(树莓派)。

准备

本项目需要以下软件:

快速上手

简单而言,搞明白了项目路径,Nginx 配置就行了,遇到任何问题请提出 issue。

Windows 10

如果你使用的是 Windows 10 请查看 支持文档

安装

使用以下的任意一种方法来安装本项目。

  • 使用一键安装脚本

    $ curl -fsSL lnmp.khs1994.com -o lnmp.sh ; sh lnmp.sh
  • 使用 git clone

    $ git clone --recursive https://github.com/khs1994-docker/lnmp.git
    
    # $ git clone --recursive [email protected]:khs1994-docker/lnmp.git
    
    # 中国镜像
    
    $ git clone --recursive https://code.aliyun.com/khs1994-docker/lnmp.git
    
    # $ git clone --recursive [email protected]:khs1994-docker/lnmp.git

启动 LNMP

$ cd lnmp

$ ./lnmp-docker.sh development

$ curl 127.0.0.1

Welcome use khs1994-docker/lnmp v18.02 x86_64 With Pull Docker Image

development

PHP 项目开发

./app 目录下开始 PHP 项目开发,在 ./config/nginx/ 新建 nginx 配置文件。

你也可以使用以下命令快速的新建一个 PHP 项目,并完成后续一系列配置(生成 nginx 配置、申请 SSL 证书)。

# $ ./lnmp-docker.sh new

$ ./lnmp-docker.sh restart nginx

PHPer 常用命令

  • lnmp-php

  • lnmp-composer

  • lnmp-phpunit

  • lnmp-laravel

  • ...

更多信息请请查看 支持文档

一键申请 SSL 证书

acme.sh 提供支持

$ ./lnmp-docker.sh ssl www.khs1994.com

一键申请证书仅支持 dnspod.cn DNS,使用前请提前在 .env 文件中设置 DNS 服务商的相关密钥。也支持一键生成自签名 SSL 证书,更多信息请查看 支持文档

查看详情

$ docker container ls -a -f label=com.khs1994.lnmp

自行构建 LNMP 镜像

如果要使用自行构建的镜像请查看 支持文档

重启

# 全部重启
$ ./lnmp-docker.sh restart

# 重启指定软件
$ ./lnmp-docker.sh restart nginx php7

停止

$ ./lnmp-docker.sh stop

销毁

$ ./lnmp-docker.sh down

更新记录

每月更新版本,版本命名方式为 YY.MM,更新记录请查看 Releases

支持 Kubernets

请查看 支持文档

项目说明

支持特性

请查看 支持文档

包含软件

Name Docker Image Version Based
NGINX khs1994/nginx:1.13.9-tls1.3-stretch 1.13.9 Debian:stretch
Apache httpd:2.4.29-alpine 2.4.29 Alpine:3.6
MySQL mysql:8.0.3 8.0.3 Debian:jessie
MariaDB mariadb:10.3.4 10.3.4 Debian:jessie
Redis redis:4.0.8-alpine 4.0.8 Alpine:3.7
PHP-FPM khs1994/php-fpm:7.2.2-alpine3.7 7.2.2 Alpine:3.7
Laravel khs1994/php-fpm:7.2.2-alpine3.7 5.5 Alpine:3.7
Composer khs1994/php-fpm:7.2.2-alpine3.7 1.6.3 Alpine:3.7
Memcached memcached:1.5.4-alpine 1.5.4 Alpine:3.7
RabbitMQ rabbitmq:3.7.2-management-alpine 3.7.2 Alpine:3.7
PostgreSQL postgres:10.1-alpine 10.1 Alpine:3.6
MongoDB mongo:3.7.1 3.7.1 Debian:jessie
PHPMyAdmin phpmyadmin/phpmyadmin:latest latest Alpine:3.6
Registry registry:latest latest Alpine:3.4

文件夹结构

文件夹 说明
app 项目文件(HTML, PHP, etc)
backup 备份文件
bin PHPer 常用命令
config 配置文件
dockerfile 自定义 Dockerfile
logs 日志文件
scripts 用户自定义脚本文件

端口暴露

  • 80
  • 443

命令行工具

为简化操作方式,本项目提供了 交互式 的命令行工具 ./lnmp-docker.sh

生产环境

马上开启 容器即服务( CaaS ) 之旅!更多信息请查看 支持文档

LinuxKit (实验性玩法)

# OS: macOS

$ cd linuxkit

$ linuxkit build lnmp.yml

$ linuxkit run -publish 8080:80/tcp lnmp

浏览器打开 127.0.0.1:8080,即可看到网页

生产环境用户

项目国内镜像

TLSv1.3

原生支持 TLSv1.3.

CI/CD

请使用 khs1994-docker/ci

Docker Daemon TLS

请查看 khs1994-docker/dockerd-tls

支持文档

https://doc.lnmp.khs1994.com

贡献项目

请查看:如何贡献

感谢

更多资料

赞赏我

请访问 https://zan.khs1994.com