{"id":13793156,"url":"https://github.com/khs1994-docker/lnmp","last_synced_at":"2025-05-15T07:05:18.103Z","repository":{"id":37451331,"uuid":"103332289","full_name":"khs1994-docker/lnmp","owner":"khs1994-docker","description":":computer: :whale: :elephant: :dolphin: :penguin: :rocket: Start Docker LNMP(LEMP) In less than 2 minutes Powered by Docker Compose. 让 PHP 开发者快速（一键）搭建基于容器技术（Docker、Kubernetes）的开发、测试、生产（CI/CD by Drone）环境.","archived":false,"fork":false,"pushed_at":"2025-05-02T02:59:40.000Z","size":13165,"stargazers_count":673,"open_issues_count":57,"forks_count":136,"subscribers_count":13,"default_branch":"23.11","last_synced_at":"2025-05-02T03:30:45.531Z","etag":null,"topics":["ci","devops","docker","docker-compose","laravel","lemp","lnmp","php","wsl"],"latest_commit_sha":null,"homepage":"https://docs.lnmp.khs1994.com","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/khs1994-docker.png","metadata":{"files":{"readme":"README.cn.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"khs1994","custom":["https://cloud.tencent.com/act/cps/redirect?redirect=1077\u0026cps_key=3a5255852d5db99dcd5da4c72f05df61\u0026from=console","https://zan.khs1994.com"]}},"created_at":"2017-09-12T23:59:29.000Z","updated_at":"2025-04-06T09:42:14.000Z","dependencies_parsed_at":"2023-12-06T01:30:20.657Z","dependency_job_id":"898381b8-c8a8-49c2-85c9-81a3166166c3","html_url":"https://github.com/khs1994-docker/lnmp","commit_stats":{"total_commits":2385,"total_committers":7,"mean_commits":340.7142857142857,"dds":"0.017610062893081757","last_synced_commit":"933a3aaea75036b1d9f3d769a486e3bfa24b904c"},"previous_names":[],"tags_count":102,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Flnmp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Flnmp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Flnmp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khs1994-docker%2Flnmp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/khs1994-docker","download_url":"https://codeload.github.com/khs1994-docker/lnmp/tar.gz/refs/heads/23.11","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254292040,"owners_count":22046426,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci","devops","docker","docker-compose","laravel","lemp","lnmp","php","wsl"],"created_at":"2024-08-03T22:01:23.242Z","updated_at":"2025-05-15T07:05:13.093Z","avatar_url":"https://github.com/khs1994-docker.png","language":"Dockerfile","funding_links":["https://github.com/sponsors/khs1994","https://cloud.tencent.com/act/cps/redirect?redirect=1077\u0026cps_key=3a5255852d5db99dcd5da4c72f05df61\u0026from=console","https://zan.khs1994.com"],"categories":["Dockerfile (37)","Dockerfile","PHP相关软件/工具"],"sub_categories":["PRC"],"readme":"# LNMP Docker\n\n## 由于 Docker 镜像默认地址国内访问不畅，请进行如下配置\n\n`.env` 文件增加如下内容\n\n```bash\nLNMP_DOCKER_IMAGE_PREFIX=pcit-docker.pkg.coding.net/khs1994-docker/khs1994\nLNMP_LIBRARY_NS=ccr.ccs.tencentyun.com/library-mirror\n```\n\n[![GitHub stars](https://img.shields.io/github/stars/khs1994-docker/lnmp.svg?style=social\u0026label=Stars)](https://github.com/khs1994-docker/lnmp) [![GitHub release](https://img.shields.io/github/release/khs1994-docker/lnmp.svg)](https://github.com/khs1994-docker/lnmp/releases) [![GitHub (pre-)release](https://img.shields.io/github/release/khs1994-docker/lnmp/all.svg)](https://github.com/khs1994-docker/lnmp/releases) [![license](https://img.shields.io/github/license/khs1994-docker/lnmp.svg)](https://github.com/khs1994-docker/lnmp) [![Build Status](https://ci.khs1994.com/github/khs1994-docker/lnmp/status?branch=23.11)](https://ci.khs1994.com/github/khs1994-docker/lnmp)\n\n[![star](https://gitee.com/khs1994-docker/lnmp/badge/star.svg?theme=dark)](https://gitee.com/khs1994-docker/lnmp/stargazers)\n\n:computer: :whale: :elephant: :dolphin: :penguin: :rocket: 使用 Docker Compose 快速搭建 LNMP 环境，仅需 **一条命令** `$ ./lnmp-docker up`\n\n**企业版** 个性化定制请访问 [`lnmp-ee`](https://github.com/khs1994-docker/lnmp-ee)\n\n| Platform | Status |\n| -- | -- |\n| Windows | [![Build status](https://ci.appveyor.com/api/projects/status/itgp61n808n80b8m/branch/23.11?svg=true)](https://ci.appveyor.com/project/khs1994-docker/lnmp/branch/23.11) |\n| Linux |  [![Build Status](https://ci.khs1994.com/github/khs1994-docker/lnmp/status?branch=23.11)](https://ci.khs1994.com/github/khs1994-docker/lnmp) |\n| macOS | ![CI](https://github.com/khs1994-docker/lnmp/workflows/CI/badge.svg?branch=23.11) |\n| Linux arm64v8 | - |\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"600\" src=\"https://user-images.githubusercontent.com/16733187/47264269-2467a780-d546-11e8-8cde-f63207ee28d9.jpg\"\u003e\n\u003c/p\u003e\n\n* [项目初衷](docs/why.md)\n\n* [支持文档](https://docs.lnmp.khs1994.com)\n\n* [【腾讯云】云服务器限时秒杀，1核2G首年99元！](https://cloud.tencent.com/act/cps/redirect?redirect=1077\u0026cps_key=3a5255852d5db99dcd5da4c72f05df61\u0026from=console)\n\n* [项目演示](https://asciinema.org/a/215588)\n\n* [反馈](https://github.com/khs1994-docker/lnmp/issues?q=is%3Aopen+is%3Aissue+label%3Alnmp%2Ffeedback)\n\n* [计划支持特性](https://github.com/khs1994-docker/lnmp/issues?q=is%3Aopen+is%3Aissue+label%3Alnmp%2Ftodo)\n\n* [最佳实践](https://github.com/khs1994-docker/php-demo)\n\n* [赞助](https://zan.khs1994.com)\n\n本项目支持 `x86_64` 架构的 Linux，macOS，Windows 10 并且支持 `arm` 架构的 Debian(树莓派)。\n\n:warning: 除了 `.env` 等特定文件，本项目中的任何文件严禁二次修改。[为什么？](https://github.com/khs1994-docker/lnmp/issues/238)\n\n:warning: Windows Docker 非常不稳定，且运行 Laravel 响应较慢。[解决办法](docs/laravel.md)\n\n:gift: 为了本项目的持续发展，你可以使用 [推广产品](ad) 或直接 [打赏](https://zan.khs1994.com) 赞助本项目。\n\n## 微信订阅号\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"200\" src=\"https://user-images.githubusercontent.com/16733187/46847944-84a96b80-ce19-11e8-9f0c-ec84b2ac463e.jpg\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cstrong\u003e关注项目作者微信订阅号，接收项目最新动态\u003c/strong\u003e\u003c/p\u003e\n\n## 准备\n\n本项目需要以下软件：\n\n:one: [Git](https://mirrors.huaweicloud.com/git-for-windows/)\n\n:two: [Docker](https://github.com/yeasy/docker_practice/tree/master/install) 23.11 Stable +\n\n:three: [Docker Compose v2.17.0+](https://github.com/yeasy/docker_practice/blob/master/compose/install.md)\n\n:four: WSL (**Windows** Only)\n\n## 快速上手\n\n### Windows 10\n\n如果你使用的是 Windows 10 请查看 [支持文档](docs/install/windows.md)。\n\n### 安装\n\n\u003e 鉴于国内 clone GitHub 项目较慢，本项目在 gitee.com 托管，每日集成到 GitHub，建议国内用户使用中国镜像，技术交流请到本项目 GitHub，避免在 gitee.com 提 issue 或 PR。\n\n```bash\n$ git clone --depth=1 https://github.com/khs1994-docker/lnmp.git\n\n# $ git clone --depth=1 git@github.com:khs1994-docker/lnmp.git\n\n# 从 GitHub 克隆太慢？请使用中国镜像\n\n$ git clone --depth=1 https://gitee.com/khs1994-docker/lnmp.git\n\n# $ git clone --depth=1 git@gitee.com:khs1994-docker/lnmp.git\n```\n\n### 启动 LNMP Demo\n\n```bash\n$ cd lnmp\n\n$ ./lnmp-docker up\n\n$ curl 127.0.0.1\n\nWelcome use khs1994-docker/lnmp v23.11 x86_64 With Pull Docker Image\n\ndevelopment\n\n```\n\n:bulb: MySQL 默认 ROOT 密码为 `mytest`\n\n### PHP 项目开发\n\n在 `./app/` 下新建一个文件夹作为 PHP 项目开发目录，并在 `./config/nginx/` 新建一个 nginx 配置文件。\n\n你也可以使用以下命令快速的新建一个 PHP 项目，并完成后续一系列配置（生成 nginx 配置、申请 SSL 证书）。\n\n```bash\n# $ ./lnmp-docker new\n\n$ ./lnmp-docker restart nginx\n```\n\n\u003e 你可以通过设置 `APP_ROOT` 来改变 PHP 项目文件夹所在位置。\n\n更多信息请查看 LNMP 容器化最佳实践 https://github.com/khs1994-docker/php-demo\n\n### 如何连接服务\n\n```diff\n$redis = new \\Redis();\n\n- $redis-\u003econnect('127.0.0.1',6379);\n+ $redis-\u003econnect('redis', 6379);\n\n- $pdo = new \\PDO('mysql:host=127.0.0.1;dbname=test;port=3306','root','mytest');\n+ $pdo = new \\PDO('mysql:host=mysql,dbname=test,port=3306', 'root', 'mytest');\n```\n\n## 进阶\n\n* [Kubernetes](https://github.com/khs1994-docker/lnmp-k8s)\n\n## PHPer 常用命令\n\n* `lnmp-php`\n\n* `lnmp-composer`\n\n* `lnmp-phpunit`\n\n* `lnmp-laravel`\n\n* `...`\n\n更多信息请请查看 [支持文档](docs/command.md)\n\n## 一键申请 SSL 证书\n\n\u003e由 [`acme.sh`](https://github.com/acmesh-official/acme.sh) 提供支持\n\n```bash\n$ ./lnmp-docker ssl khs1994.com -d *.khs1994.com\n```\n\n\u003e使用前请提前在 `.env` 文件或系统环境变量中设置 DNS 服务商的相关密钥。也支持一键生成自签名 SSL 证书，更多信息请查看 [支持文档](docs/nginx/issue-ssl.md)\n\n## 查看详情\n\n```bash\n$ docker container ls -a -f label=com.khs1994.lnmp\n```\n\n## 自行构建 LNMP 镜像\n\n如果要使用自行构建的镜像请查看 [支持文档](docs/development.md)\n\n## 重启\n\n```bash\n# 全部重启\n$ ./lnmp-docker restart\n\n# 重启指定软件\n$ ./lnmp-docker restart nginx php8\n```\n\n## 停止\n\n```bash\n$ ./lnmp-docker stop\n```\n\n## 销毁\n\n```bash\n$ ./lnmp-docker down\n```\n\n## 项目说明\n\n### 支持特性\n\n请查看 [支持文档](https://github.com/khs1994-docker/lnmp/tree/master/docs#%E7%89%B9%E8%89%B2)\n\n### 包含软件\n\n|Name|Docker Image|Version|Based|\n|:-- |:--         |:--    |:--  |\n|[ACME.sh](https://github.com/acmesh-official/acme.sh)                     |`khs1994/acme:3.1.0`            | **3.1.0**           |`alpine:3.20`    |\n|[NGINX](https://github.com/docker-library/docs/tree/master/nginx)         |`nginx:1.27.0-alpine`           | **1.27.0**          |`alpine:3.19`    |\n|[NGINX Unit](https://github.com/nginx/unit)                               |`khs1994/php:8.3.12-unit-alpine`| **1.33.0**          |`alpine:3.20`    |\n|[HTTPD](https://github.com/docker-library/docs/tree/master/httpd)         |`httpd:2.4.53-alpine`           | **2.4.53**          |`alpine:3.16`    |\n|[MySQL](https://github.com/docker-library/docs/tree/master/mysql)         |`mysql:8.0.33`                  | **8.0.33**          |`oraclelinux:8-slim`|\n|[MariaDB](https://github.com/docker-library/docs/tree/master/mariadb)     |`mariadb:10.11.5`                | **10.11.5**          |`ubuntu:jammy`  |\n|[Redis](https://github.com/docker-library/docs/tree/master/redis)         |`redis:7.0.0-alpine`            | **7.0.0**           |`alpine:3.16`    |\n|[PHP-FPM](https://github.com/khs1994-docker/php)                          |`khs1994/php:8.3.12-fpm-alpine`     | **8.3.12**      |`alpine:3.20`    |\n|[Composer](https://github.com/docker-library/docs/tree/master/composer)   |`khs1994/php:8.3.12-composer-alpine`| **2.8.3**     |`alpine:3.20`    |\n|[Memcached](https://github.com/docker-library/docs/tree/master/memcached) |`memcached:1.6.15-alpine`           | **1.6.15**       |`alpine:3.16`    |\n|[RabbitMQ](https://github.com/docker-library/docs/tree/master/rabbitmq)   |`rabbitmq:3.9.0-management-alpine` | **3.9.0**       |`alpine:3.13`    |\n|[PostgreSQL](https://github.com/docker-library/docs/tree/master/postgres) |`postgres:14.0-alpine`             | **14.0**        |`alpine:3.14`    |\n|[MongoDB](https://github.com/docker-library/docs/tree/master/mongo)       |`mongo:5.0.3`                      | **5.0.3**       |`ubuntu:bionic`  |\n|[PHPMyAdmin](https://github.com/docker-library/docs/tree/master/phpmyadmin)|`phpmyadmin:5.2.0`                | **5.2.0**       |`alpine:3.16`    |\n|[Registry](https://github.com/khs1994-docker/registry)                    |`registry:latest`                  | **latest**      |`alpine:3.11`    |\n\n### 文件夹结构\n\n|文件夹|说明|\n|:--|:--|\n|`app`         |项目文件（HTML, PHP, etc）|\n|`scripts/backup` |备份文件       |\n|`bin`         |PHPer 常用命令    |\n|`config`      |配置文件          |\n|`dockerfile`  |自定义 Dockerfile |\n|`log`         |日志文件          |\n|`scripts`     |用户自定义脚本文件 |\n\n### 端口暴露\n\n* 80\n* 443\n\n## 命令行工具\n\n为简化操作方式，本项目提供了 `交互式` 的命令行工具 [`./lnmp-docker`](docs/cli.md)\n\n## 生产环境用户\n\n### [khs1994.com](//khs1994.com)\n\n### [PCIT -- PHP CI TOOLKIT](https://github.com/pcit-ce/pcit)\n\n## 项目国内镜像\n\n* 码云：https://gitee.com/khs1994-docker/lnmp.git\n\n## HTTP3/QUIC\n\n请查看 https://github.com/khs1994-docker/lnmp/issues/895\n\n## CI/CD\n\n请使用 [khs1994-docker/ci](https://github.com/khs1994-docker/ci)\n\n## 支持文档\n\nhttps://docs.lnmp.khs1994.com\n\n## 贡献项目\n\n请查看：[如何贡献](CONTRIBUTING.md)\n\n## 感谢\n\n* LNMP\n* [Docker Hub](https://hub.docker.com)\n* [Tencent Cloud Container Service](https://cloud.tencent.com/act/cps/redirect?redirect=10058\u0026cps_key=3a5255852d5db99dcd5da4c72f05df61)\n* [Let's Encrypt](https://letsencrypt.org/)\n* [acme.sh](https://github.com/acmesh-official/acme.sh)\n\n## 更多资料\n\n* [Docker Compose 中国镜像](https://github.com/khs1994-docker/compose-cn-mirror)\n* [Docker 从入门到实践](https://github.com/yeasy/docker_practice)\n* [Compose file version 3 reference](https://docs.docker.com/compose/compose-file/)\n* [Share Compose configurations between files and projects](https://docs.docker.com/compose/extends/)\n* [kasperisager/php-dockerized](https://github.com/kasperisager/php-dockerized)\n* [zhaojunlike/docker-lnmp-redis](https://github.com/zhaojunlike/docker-lnmp-redis)\n* [micooz/docker-lnmp](https://github.com/micooz/docker-lnmp)\n* [twang2218/docker-lnmp](https://github.com/twang2218/docker-lnmp)\n* [bravist/lnmp-docker](https://github.com/bravist/lnmp-docker)\n* [yeszao/dnmp](https://github.com/yeszao/dnmp)\n* [laradock/laradock](https://github.com/laradock/laradock)\n\n## 赞助项目\n\n请访问 [https://zan.khs1994.com](https://zan.khs1994.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhs1994-docker%2Flnmp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhs1994-docker%2Flnmp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhs1994-docker%2Flnmp/lists"}