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

本文涉及的产品
RDS AI 助手,专业版
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
简介: 项目中N次使用PHP+MYSQL+NGINX+REDIS+ Elasticsearch,为了方便所以使用了docker fox.风来了 完整版地址: http://blog.csdn.net/fenglailea/article/details/50451555 目前是 LINUX 下,稍后制作 WINDOWS下的 1.docker 环境安装 http://blog.csd

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

fox.风来了

完整版地址:

http://blog.csdn.net/fenglailea/article/details/50451555


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

1.docker 环境安装

http://blog.csdn.net/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







相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
8月前
|
缓存 NoSQL 关系型数据库
MySQL 与 Redis 如何保证双写一致性?
我是小假 期待与你的下一次相遇 ~
880 7
|
11月前
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
8月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
894 6
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
483 14
|
消息中间件 NoSQL Linux
Redis的基本介绍和安装方式(包括Linux和Windows版本),以及常用命令的演示
Redis(Remote Dictionary Server)是一个高性能的开源键值存储数据库。它支持字符串、列表、散列、集合等多种数据类型,具有持久化、发布/订阅等高级功能。由于其出色的性能和广泛的使用场景,Redis在应用程序中常作为高速缓存、消息队列等用途。
1095 16
|
缓存 NoSQL 关系型数据库
Redis和Mysql如何保证数据⼀致?
1. 先更新Mysql,再更新Redis,如果更新Redis失败,可能仍然不⼀致 2. 先删除Redis缓存数据,再更新Mysql,再次查询的时候在将数据添加到缓存中 这种⽅案能解决1 ⽅案的问题,但是在⾼并发下性能较低,⽽且仍然会出现数据不⼀致的问题,⽐如线程1删除了 Redis缓存数据,正在更新Mysql,此时另外⼀个查询再查询,那么就会把Mysql中⽼数据⼜查到 Redis中 1. 使用MQ异步同步, 保证数据的最终一致性 我们项目中会根据业务情况 , 使用不同的方案来解决Redis和Mysql的一致性问题 : 1. 对于一些一致性要求不高的场景 , 不做处理例如 : 用户行为数据 ,
|
消息中间件 缓存 NoSQL
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
|
9月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
578 158
|
9月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。