Docker 部署lnmp

        环境简介

        主机名 IP地址 系统
        docker_server 192.168.169.20 win10

        docker 的搭建过程这里就不在详细描述了,具体请参照CentOS Docker部署 这篇文章

        部署 lnmp

        下载所需要的镜像 (nginx,mysql 5.6,php 7.0) 版本可自选

        获取 Mysql 5.6 镜像

        docker pull mysql:5.7

        启动容器 cs_mysql

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

        参数说明

        -d 让容器在后台运行

        -p 添加主机到容器的端口映射

        -e 设置环境变量,这里设置mysql的root用户的初始密码

        -name 容器的名称、只要求唯一性

        获取php 7.0镜像

        docker pull php:7.0-fpm

        启动php 容器

        docker run -d -v F:\docker\data\nginx\www\html:/var/www/html -p 9000:9000 --link lnmp_mysql:mysql --name lnmp_php php:7.0-fpm

        参数说明

        -d 让容器在后台运行

        -p 添加主机到容器的端口映射

        -v 添加目录映射,主机上的F:\docker\data\nginx\www\html映射到容器里面的/var/www/html,如果主机没有这个目录就创建这个目录,或者映射别的目录,但是后面路径要统一

        -name 容器的名字

        -link 容器与另外一个容器建立联系,这样就可以在当前的容器去使用另一个容器里的服务

        测试目录映射
        在主机F:\docker\data\nginx\www\html 目录下创建php测试页面,会直接映射到容器里面

        docker exec lnmp_php cat /var/www/html/index.php

        <?
        phpinfo();
        ?>

        //看直接映射到了容器内部了

        php的扩展安装

        安装php-redis

        pecl install redis && docker-php-ext-enable redis

        安装后执行 php -m //查看安装了那些

        php -m

        获取Nginx镜像

        docker pull nginx

        启动Nginx容器

        docker run -d -p 80:80 --name lnmp_nginx -v F:\docker\data\nginx\www\html:/var/www/html --link lnmp_php:phpfpm nginx

        参数说明

        -d 让容器运行在后台

        -p 添加主机到容器的端口映射

        -v 添加目录映射,这里最好nginx容器的根目录最好写成和php容器中根目录一样。但是不一定非要一样,如果不一样在配置nginx的时候需要注意

        -name 容器的名称

        -link 容器之间建立起来联系

        修改Nginx 的配置文件,使他支持php ,方式有多种,这里我直接拷贝出配置文件修改在导进去即可

        docker cp lnmp_nginx:/etc/nginx/conf.d/default.conf /opt/

        cat default.conf

        () server { listen 80; server_name localhost; location / { root /var/www/html; // 修改这里默认的路径 index index.html index.htmi index.php; //这里加入添加php的方式 } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { root html; fastcgi_pass 92fc30be9a85:9000; //这里可以用容器ID,也可以用容器IP,都具备唯一性 fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/$fastcgi_script_name; //修改这里的路径 include fastcgi_params; } } ()

        修改完毕导入配置文件到Nginx 容器里面

        docker cp default.conf lnmp_nginx:/etc/nginx/conf.d/default.conf

        进入到容器里面重新加载配置文件

        docker exec lnmp_nginx nginx -t

        //Nginx检测配置文件是否正确

        docker exec lnmp_nginx nginx -s reload

        在主机中查看所有容器映射的端口

        netstat -ano

        访问浏览器测试
        看到这个页面说明搭建成功了!
        分享图片

        相关文章
        相关标签/搜索
        每日一句
          每一个你不满意的现在,都有一个你没有努力的曾经。
        公众号推荐
           一个历史类的公众号,欢迎关注
        一两拨千金
        管家婆精选心水黄大仙 淄博市| 大同市| 鄂温| 忻城县| 江口县| 沿河| 沧源| 昭觉县| 揭阳市| 寻乌县| 综艺| 宁国市| 科技| 盐边县| 龙泉市| 定西市| 河南省| 鹤峰县| 明光市| 谷城县| 武汉市| 汝南县| 德保县| 长泰县| 集贤县| 稷山县| 萨嘎县| 蚌埠市| 温宿县| 桃园市| 新丰县| 稷山县| 芜湖县| 井冈山市| 江油市| 大关县| 哈密市| http://fa.hz0j0r8vo.fun http://fa.hz0j1r5vo.fun http://fa.hz0j1r1vo.fun http://fa.hz0j2r7vo.fun http://fa.hz0j0r6vo.fun