docker 中 NGINX+PHP+MYSQL+REDIS+Elasticsearch 环境搭建 (linux系统)

本文介绍如何使用Docker快速部署包含PHP、MySQL、Nginx、Redis和Elasticsearch的开发环境。文中详细讲解了从环境搭建到容器配置的全过程,并提供了一系列实用的Docker命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目中N次使用PHP+MYSQL+NGINX+REDIS+ Elasticsearch,为了方便所以使用了docker

fox.风来了

完整版地址:

http://blog.youkuaiyun.com/fenglailea/article/details/50451555


目前是 LINUX 下,稍后制作 WINDOWS下的

1.docker 环境安装

http://blog.youkuaiyun.com/fenglailea/article/details/44886427

推荐使用 方法二

2.下载镜像

国外和国内的docker hub 是两种速度体验,访问国外的HUB 的时间,可以和朋友一起搓一顿都够了。
可以使用国内的docker HUB
使用国外下载 docker hub 时,有时会报错,比如超时,或者有代理什么的,直接PASS,重新PULL

2.1 nginx+php+redis 镜像下载

docker pull foxiswho/docker-nginx-php
大约2小时,docker hub  国内没有服务器就是慢,可以使用国内的一些docker 仓库如 阿里云等

2.2 elasticsearch 镜像下载

docker pull elasticsearch
大约 1 小时

2.3  mysql 或其他

docker pull mysql:5.5.27
大约1小时

3. 启动设置容器

3.1 elasticsearch

docker run --name es -p 9200:9200 -p 9300:9300 -d elasticsearch:latest

--name 容器别名

-p 主机端口:容器端口

-d 镜像

3.2 mysql

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.6.27

3.3 nginx+php+redis

docker run --name web --link mysql:db --link es:es -p 8080:80 -v /www/wwwroot/web:/usr/share/nginx/html -d foxiswho/docker-nginx-php:latest
--link 容器内之间链接,比如访问数据库 原来 是 localhost或者 127.0.0.1 ,现在只要填写 db 就可以了

-v   本地目录:容器目录  ,例如 本地目录 /www/wwwroot/web

注意 本地 目录设置权限和用户组

chown -R www-data:www-data /www/wwwroot/web

chmod -R 777 /www/wwwroot/web

这个时候访问本机 127.0.0.1:8080  就可以看到 你的项目站点了

4.容器操作

4.1 已启动的容器

如果启动成功了使用命令就可以看到已启动的容器:

docker ps

4.1 所有容器

docker ps -a







要构建一个基于上述技术栈的应用程序,涉及多个组件和技术,下面是一些关键点的简介: 1. **Spring Boot**: 是一个快速开发框架,简化了Java应用的配置和启动过程。 - 示例:用于创建简单的RESTful API服务[^4]。 2. **Spring Cloud**: 提供了一组工具和服务来扩展微服务架构。 - 功能包括服务发现、配置中心、API网关等[^5]。 3. **RabbitMQ**: 消息队列服务,支持异步通信和解耦。 - 在Spring Cloud中集成,可以用来实现消息驱动架构[^6]。 4. **Redis**: 缓存数据库,提高应用程序性能。 - 可以缓存热点数据或会话信息[^7]。 5. **Elasticsearch**: 分布式搜索和分析引擎,常用于全文检索。 - 支持复杂查询和实时数据分析[^8]。 6. **Xxl-sso**: 企业级权限管理系统,用于身份验证和授权[^9]。 7. **LCN**: 可能指的是Linux容器网络,Docker的基础组件。 - 管理容器间的网络连接[^10]。 8. **Nginx**: 反向代理服务器,优化HTTP请求和负载均衡。 - 与Spring Boot结合时,可能作为API Gateway[^11]。 9. **七牛云**: 对象存储服务,用于文件上传和管理。 - 存储静态资源[^12]。 10. **Swagger2**: 开源API文档生成工具。 - 用于自动生成API文档[^13]。 11. **MySQL**: 关系型数据库,存储业务数据。 - 数据持久化[^14]。 12. **Maven**: 项目管理和依赖管理工具。 - 用于构建和打包项目[^15]。 13. **GitLab**: 代码版本控制系统,用于版本控制和协作开发。 - 版本控制和CI/CD[^16]。 14. **Docker**: 虚拟化平台,便于部署和运行应用。 - 快速构建可移植的环境[^10]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值