当前位置:服务器 > > 正文

docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

时间:2021-10-08 00:09:26类别:服务器

docker 构建整个环境

Docker如何快速搭建LNMP环境最新前言

提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。

提示:以下是本篇文章正文内容,下面案例可供参考

一、Mysql?

1.拉取mysql镜像

  • docker pull mysql:5.6
    
  • docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    2.运行启动mysql容器

  • docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=xy123456 --name xy_mysql mysql:5.6
    
  • docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    参数说明:
    -d 让容器在后台运动
    -p 添加主机到容器的端口映射
    -e 设置mysql环境变量,设置root的初始密码
    –name 给容器取名字
    最后一个参数是镜像名称,为拉取镜像的名称

    二、安装php-fpm

    1.拉取php-fpm镜像

  • docker pull php:7.0-fpm
    
  • 也可拉docker pull php:7.4.20-fpm docker pull php:7.3.28-fpm 这些版本在仓库里都是存在,放心拉

    docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    2.运行启动php-fpm容器

  • docker run -d -v D:/docker/nginx:/var/www/html -p 9000:9000 --link xy_mysql:mysql --name xy_phpfpm php:7.0-fpm
    
  • 参数说明:
    -d 让容器在后台运动
    -p 添加主机到容器的端口映射
    -v 添加目录映射,主机上的D:/docker/nginx映射到/var/www/html ,即同步目录下内容.'D:/docker/nginx'这个主机下的目录你直接复制你想要
    写代码的目录即可,$PWD如果有效的话是指当前目录,我是因为使用此参数报错,所以直接复制粘贴了路径.
    –name 给容器取名字
    –link 与另外一个容器建立联系,这样可以在当前容器去使用另一个容器的服务
    最后一个参数是镜像名称,为拉取镜像的名称

    3.进入php-fpm容器

  • docker exec -it xy_phpfpm bash
    
  • 参数说明
    -t 在容器里生产一个伪终端
    -i 对容器内的标准输入 (STDIN) 进行交互

    在/var/www/html/下创建一个index.php文件后,你会发现本地也会有,这就同步了,因为启动容器时已经把主机和容器相应的目录进行
    映射了;

    docker 构建整个环境(Docker如何快速搭建LNMP环境最新)
    docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    4.安装pdo_mysql模块

    因之后要使用pdo模块进行测试,所以安装pdo_mysql模块.

  • docker-php-ext-install pdo_mysql
    
  • php -m 打印查看是否安装成功;

    docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    这样安装之后在phpinfo()打印后不一定会显示扩展,之后测试会有修改的步骤

    三、安装nginx

    1.拉取nginx镜像

  • docker pull nginx:1.10.3
    
  • 2.运行nginx容器

  • docker run -d -p 80:80 -v  D:/docker/nginx:/var/www/html --link xy_phpfpm:phpfpm --name xy_nginx nginx:1.10.3
    
  • 3.进入nginx容器,修改nginx配置文件让他支持php

  • docker exec -it xy_nginx bash
    
  • docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    这里推荐去 /etc/nginx/conf.d/default.conf下去更改;
    fastcgi_pass 写php:7.0-fpm:9000 别写起的别名可能会失效;
    root写成之前php容器设置的代码目录;

    4.测试安装是否成功

    修改index.php代码

  • <?php
    
    phpinfo();
    
  • docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    这个在使用之前安装的命令之后phpinfo()并没有mysql,需要进入php.ini中去更改

    5.修改配置

  • docker exec -it xy_phpfpm bash
    
  • docker 构建整个环境(Docker如何快速搭建LNMP环境最新)

    这个容器中php.ini 在/usr/local/etc/php下 php.ini-development php.ini-production
    这两个文件就是php.ini 文件是一模一样 看名字就知道什么意思了
    把extension=php_pdo_mysql.dll扩展放开就可以

    6.链接mysql测试

    修改index.php代码

  • try {
        $con = new PDO('mysql:host=xy_mysql;dbname=mysql', 'root', 'xy123456');
        $con->query('SET NAMES UTF8');
        $res =  $con->query('select * from user');
        while ($row = $res->fetch(PDO::FETCH_ASSOC)) {
          //  echo "id:{$row['id']} name:{$row['name']}";
    	  print_r($row);
        }
    } catch (PDOException $e) {
         echo '错误原因:'  . $e->getMessage();
    }
    
  • 如果没报错,则为成功

    总结

    成功则初级环境搭建就ok了,整个过程搭建要细心,在配置文件的时候多查资料

    以上就是Docker搭建LNMP环境 的详细内容,更多关于Docker搭建LNMP环境的资料请关注开心学习网其它相关文章!

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐