zoukankan      html  css  js  c++  java
  • Mac下docker搭建lnmp环境 + redis + elasticsearch

    之前在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配置

  • 相关阅读:
    2.vi 和 vim 编辑器
    1.Linux文件及目录结构
    关于聚集表的学习
    一个完整的表维护程序
    转换函数CONVERSION_EXIT_TSTRN_OUTPUT
    ABAP常用字符串处理
    函数中的异常参数设计
    数据元素文本增强(修改标准数据元素描述)
    锁对象的维护
    在物理表中分配搜索帮助
  • 原文地址:https://www.cnblogs.com/liugx/p/8502712.html
Copyright © 2011-2022 走看看