# docker-lnmp **Repository Path**: jessedev/docker-lnmp ## Basic Information - **Project Name**: docker-lnmp - **Description**: 基于Docker LNMP安装, 支持以下: PHP7.4、PHP8.0、PHP8.1、Redis6.2、Mysql8.0、Mysql5.7、Nginx1.2、Nacos2.0.3、Mongodb4.4.22、Rabbitmq3.9.16、Elasticsearch 7.14.2、Kibana 7.14.2 - **Primary Language**: Docker - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 9 - **Forks**: 1 - **Created**: 2023-05-05 - **Last Updated**: 2025-12-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # docker-lnmp 一个基于 Docker 的 LNMP(Linux, Nginx, MySQL, PHP)开发环境,支持多种服务组件,适用于本地开发和测试。 --- ## 使用方式 ### 1. 进入项目目录 ```bash cd docker-lnmp ``` ### 2. 环境变量配置 ```bash # 复制环境变量配置文件 cp .env.example .env # 复制 Docker Compose 示例文件 cp ./docker-compose-example.yml ./docker-compose.yml ``` ### 3. 构建镜像并运行容器 ```bash # 使用默认配置启动服务 docker-compose up -d ``` ### 4. 手动构建服务(可选) 如果需要手动构建镜像,请执行以下步骤: ```bash # 下载 Nacos 安装包并放入 build/nacos/packages 目录 sh build/nacos/packages/download.sh # 下载 MySQL 安装包(由于文件较大,需手动下载) sh build/mysql/packages/download.sh # 使用构建专用的 compose 文件 cp ./docker-compose-build.yml ./docker-compose.yml # 构建并启动服务 docker-compose up -d ``` --- ## 服务配置说明 ### 5. 修改 MySQL root 用户密码 默认密码: 无, 直接回车进入 MySQL 容器并执行以下 SQL 命令: ```sql -- 修改本地 root 用户密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'a123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'; -- 创建外部 root 用户 CREATE USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'a123456'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; -- 刷新权限 FLUSH PRIVILEGES; ``` ### 6. MongoDB 创建管理员账号 进入 MongoDB 容器并执行以下命令: ```bash docker exec -it jesse-mongodb-service mongo admin ``` 在 MongoDB Shell 中执行: ```javascript // 创建管理员用户 db.createUser({ user:'root', pwd:'a123456', roles:[ { role:'userAdminAnyDatabase', db: 'admin'}, 'readWriteAnyDatabase'] }); // 验证密码 db.auth("root", "a123456"); // 测试登录 mongo --authenticationDatabase admin -u root -p a123456 ``` ### 7. RabbitMQ 信息 - **访问地址**: http://localhost:15672/ - **默认账号**: `guest` / `guest` #### 创建管理员用户(可选) ```bash rabbitmqctl add_user admin a123456 rabbitmqctl set_permissions -p / admin ".*" ".*" ".*" rabbitmqctl set_user_tags admin administrator ``` ### 8. Nacos 服务 - **访问地址**: http://localhost:8848/nacos/index.html ### 9. Elasticsearch - **访问地址**: http://localhost:9200/ #### 初始化 ES 密码 进入容器并执行: ```bash elasticsearch-setup-passwords interactive ``` ### 10. Kibana(Elasticsearch 管理界面) - **访问地址**: http://localhost:5601/ --- ## 项目结构说明 本项目包含多个服务的 Docker 构建配置,支持以下组件: - **Nginx** - **MySQL** - **PHP(7.4 / 8.0 / 8.1)** - **Swoole 扩展** - **MongoDB** - **RabbitMQ** - **Redis** - **Elasticsearch + Kibana** - **Nacos(服务发现与配置中心)** 每个服务都有独立的 `build/` 目录,包含 Dockerfile 和构建脚本。 --- ## License 本项目遵循 MIT License,请查看 [LICENSE](LICENSE) 文件获取详细信息。