之前在windows下一直使用vagrant做开发, 团队里面也是各种开发环境,几个人也没有统一环境,各种上线都是人肉,偶尔还会有因为开发、测试、生产环境由于软件版本或者配置不一致产生的问题, 今年准备持续玩玩docker+kubernetes下的敏捷开发模式(当然还有其它:如持续集成)

备忘下第一步,环境搭建

Mac下docker搭建lnmp环境 + redis + elasticsearch

拉取镜像 nginx
docker pull hub.c.163.com/library/nginx:latest

拉取镜像 mysql
docker pull hub.c.163.com/library/mysql:5.6

拉取镜像 php
docker pull hub.c.163.com/library/php:7.1-fpm

创建mysql容器
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name liugx_mysql56 hub.c.163.com/library/mysql:5.6
参数说明
-d 让容器在后台运行
-p 添加主机到容器的端口映射
-e 设置环境变量,这里是设置mysql的root用户的初始密码,这个必须设置
–name 容器的名字,随便取,但是必须唯一

创建php-fpm容器
docker run -d -v /Users/liugx/docker/data/www:/var/www/html -p 9000:9000 --link liugx_mysql56:mysql --name liugx_php71 hub.c.163.com/library/php:7.1-fpm
参数说明
-d 让容器在后台运行
-p 添加主机到容器的端口映射
-v 添加目录映射,即主机上的/Users/liugx/docker/data/www和容器中/var/www/html目录是同步的
–name 容器的名字
–link 与另外一个容器建立起联系,这样我们就可以在当前容器中去使用另一个容器里的服务。

这里如果不指定–link参数其实也是可以得,因为容易本身也是有ip的且唯一,所以我们也可以直接利用ip去访问容器。

创建nginx容器
docker run -d -p 80:80 --name liugx_nginx -v /Users/liugx/docker/data/www:/var/www/html --link liugx_php71:phpfpm hub.c.163.com/library/nginx
参数说明:
-d 让容器在后台运行
-p 添加主机到容器的端口映射
-v 添加目录映射,即主机上的/Users/liugx/docker/data/www和容器中/var/www/html目录是同步的
–name 容器的名字
–link 与另外一个容器建立起联系

后面的redis和elasticsearch直接像创建mysql数据库容器一样
docker pull hub.c.163.com/library/redis:latest
docker pull hub.c.163.com/library/elasticsearch:latest

######注意######
配置完毕后需要修改nginx配置文件(后面的步骤和平常配置类似,修改配置了重启对应的nginx容器即可生效)
主要修改内容,修改主机的根目录,如果是.php文件就转发给后端的php-fpm处理(192.168.99.100:9000)

方法:
修改nginx配置文件(进入容器):
docker exec -it liugx_nginx bash
更新软件源
apt update
安装vim
apt-get install vim

附上贴图:
连接mysql

访问php文件

nginx配置

Mac下docker搭建lnmp环境 + redis + elasticsearch的更多相关文章

  1. docker搭建lnmp环境(问题,资料,命令)

    入门参考 http://www.runoob.com/docker/docker-install-nginx.html 十大常用命令玩转docker 1. #从官网拉取镜像 docker pull & ...

  2. Centos 7 下yum搭建lnmp环境(yum安装方式)

    我们都知道linux下安装软件主要有三种方式: 1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装: 此方式的优点:可以指定软件版本,可选择性好:编译时可以手动指 ...

  3. 使用docker搭建lnmp环境

    Docker容器LNMP环境搭建 安装 制作镜像 启动并关联实例 安装 系统环境 硬件型号: ThinkPad T520 系统版本: ubuntu 14.04 CPU: i7 RAM: 8G 添加软件 ...

  4. Mac下docker搭建lamp本地开发环境

    1.先在Mac上下载docker:官网下载:下载地址(选择mac版本下载,可能速度较慢) DaoCloud下载:下载地址(速度较快,可能版本较低) 2.装完之后打开: 3.检查一下是否下载成功: $  ...

  5. docker搭建lnmp环境

    1.搭建lnmp网站平台 1.创建mysql数据库容器 docker run -it -d --name lnmp_mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD= ...

  6. Windows 下手工搭建 LNMP 环境

    参考资料 如果想方便,可以直接使用集成的 LNMP 环境(例如 PHPStudy). 下载 PHP 下载地址:https://windows.php.net/download 根据你的系统选择 32 ...

  7. 基于Docker搭建LNMP环境(转)

    关于什么是docker,建议大家先上网查查有关的用法.如果您不了解,在这篇文章中,您可以简单的理解为他是一个轻量级的虚拟机. 一.docker安装mysql 首先,我们从仓库拉取一个MySql的镜像 ...

  8. 第一篇博文,整理一下关于Mac下安装本地LNMP环境的一些坑

    安装的主要步骤是按照以下这篇文章进行的http://blog.csdn.net/w670328683/article/details/50628629,但是依然遇到了一些大大小小的坑(一个环境搞了一天 ...

  9. Ubuntu 18.04.1 下快速搭建 LNMP环境

    1.Nginx的安装 Nginx安装是属于最简单的,只需要在命令行执行 sudo apt-get install nginx 就能自动安装 Nginx,其中过程中需要 选择 Y/n 的选择Y就行了,当 ...

随机推荐

  1. 【Python MySQLdb】Library not loaded: /usr/local/mysql/lib/libmysqlclient.20.dylib解决办法

    使用MySQLdb遇到以下错误 ImportError: dlopen(/Users/jackey/Documents/Xiaomi/Code/wda_python/lib/python2./site ...

  2. 重温ASP.NET WebAPI(一)初阶

    重温ASP.NET WebAPI(一)初阶   前言 本文为个人对WebApi的回顾无参考价值.主要简单介绍WEB api和webapi项目的基本结构,并创建简单地webaapi项目实现CRUD操作. ...

  3. Solr后台管理界面配置

    配置来源 https://stackoverflow.com/questions/28043957/how-to-set-apache-solr-admin-password 注意:配置用户名密码后 ...

  4. MoreEffectiveC++Item35(异常)(条款9-15)

    条款9 使用析构函数防止内存泄漏 条款10 在构造函数中防止内存泄漏 条款11 禁止异常信息传递到析构函数外 条款12 理解"抛出一个异常''与"传递一个参数"或调用一个 ...

  5. MoreEffectiveC++Item35(基础议题)(条款1-4)

    条款1:区别指针和引用 条款2:最好使用C++转换操作符 条款3: 绝对不要以多态的方式处理数组 条款4: 避免无用的缺省构造函数 条款1:区别指针和引用 1.指针(pointer) 使用[*/-&g ...

  6. RHCS高可用集群配置(luci+ricci+fence)

    一.什么是RHCS    RHCS是Red Hat Cluster Suite的缩写,也就是红帽集群套件,RHCS是一个能够提供高可用性.高可靠性.负载均衡.存储共享且经济廉价的集群工具集合,它将集群 ...

  7. CSS字幕滚动 !!!

    marquee的基本语法:<marquee> … </marquee>,与大多数HTML语法元素一样,它也是成双出现的,被修饰对象就放在起始符和终止符之间.而且它自己可以实现鼠 ...

  8. Tomcat 环境安装

    本文以Tmcat 7版本在Windows Server 2012 64位系统下安装讲解,JAVA环境安装配置参见:http://www.cnblogs.com/fklin/p/6670760.html ...

  9. ogg高版本到低版本同步

    源端ogg版本: [oracle@rac1 ogg]$ ggsci -v Oracle GoldenGate Command Interpreter for Oracle Version 11.2.1 ...

  10. Leetcode 814. Binary Tree Pruning

    dfs 要点是这一句: return node.val==1 or node.left or node.right 完整代码: # Definition for a binary tree node. ...