zoukankan      html  css  js  c++  java
  • docker安装配置lnmp

    一、安装配置docker

    1、下载docker:yum install -y docker

    2、设置docker远程镜像地址为国内路径:curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io;然后vim /etc/docker/daemon.json去掉配置文件中的逗号

    二、安装配置mysql

    1、docker拉取mysql镜像:docker pull mysql:5.6

    2、运行mysql容器:docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=xy123456 --name xy_mysql mysql:5.6

    三、安装配置php

    1、docker拉取php镜像:docker pull php:7.0-fpm

    2、在宿主机创建目录:mkdir -p /var/nginx/www/html

    3、运行php容器:docker run -d -v /var/nginx/www/html:/var/www/html -p 9000:9000 --link xy_mysql:mysql --privileged --name xy_phpfpm php:7.0-fpm

    4、进入php容器:docker exec -it xy_phpfpm bash

    5、安装pdo扩展:docker-php-ext-install pdo_mysql

    6、配置php.ini:

    cp /usr/local/etc/php/php.ini-development  /usr/local/etc/php.ini

    vim /usr/local/etc/php.ini

    开启pdo扩展,如下

    7、退出php容器;exit

    8、重启php-fpm服务:kill -USR2 2983(pid要先查询)

    四、安装配置nginx

    1、docker拉取nginx:docker pull nginx:1.10.3

    2、运行nginx容器:docker run -d -p 80:80 --name xy_nginx -v /var/nginx/www/html:/var/www/html --link xy_phpfpm:phpfpm --privileged --name xy_nginx nginx:1.10.3

    3、进入nginx容器:docker exec -it xy_nginx bash

    4、配置nginx:vim /etc/nginx/conf.d/default.conf

        location ~ .php$ {
            root           /var/www/html;
            fastcgi_index  index.php;
            fastcgi_pass   phpfpm:9000;
            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
    
        }

    5、重新加载nginx配置文件:nginx -s reload

    五、测试

    1、添加测试文件:vim /var/nginx/www/html/index.php

    <?php
    try {
        $con = new PDO('mysql:host=mysql;dbname=test', 'root', 'xy123456');
        $con->query('SET NAMES UTF8');
        $res =  $con->query('select * from test');
        while ($row = $res->fetch(PDO::FETCH_ASSOC)) {
            echo "id:{$row['id']} name:{$row['name']}";
        }
    } catch (PDOException $e) {
         echo 'err:'  . $e->getMessage();
    }

    2、virtualbox添加端口转发:

     3、连接mysql,添加数据库、数据表及数据

    4、url访问:http://127.0.0.1/index.php

    六、改进

    1、添加开机启动项:

    # 启动docker服务
    systemctl start docker
    # 启动mysql容器
    docker start xy_mysql
    # 启动php-fpm容器
    docker start xy_phpfpm
    # 启动nginx容器
    docker start xy_nginx

    2、建立软连接,因为/var/www目录已经挂载在外部windows系统上,所以添加软连接方便以后代码编辑,ps:添加软连接后需要重启服务:ln -s /var/www/html /var/nginx/www

    七、备注:

    1、代码连接数据库域名要写为数据库容器关联到php容器的名称,端口为数据库容器的端口:

    到此docker下配置lnmp环境完成,参考url:https://blog.csdn.net/xy752068432/article/details/75975065

    如果对您有帮助,请给我点个赞>∏<,有什么不正确的也麻烦指出

  • 相关阅读:
    组合模式
    装饰者模式
    桥接设计模式
    Docker介绍
    适配器模式
    设计软件下载
    17种设计字体的创意方法
    less编译(mac版gulp)
    50种常用快捷键整理
    WebStorm设置手机测试服务器-局域网内其他设备访问
  • 原文地址:https://www.cnblogs.com/zhengchuzhou/p/9756014.html
Copyright © 2011-2022 走看看