Docker如何快速搭建LNMP环境(最新)

 更新时间:2021年06月25日 17:56:39   作者:HarryPoFly  
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。本文给大家分享机器学习的基础知识,docker搭建lnmp环境的步骤,感兴趣的朋友一起看看吧

前言

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

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

一、Mysql?

1.拉取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

在这里插入图片描述

参数说明:
-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 这些版本在仓库里都是存在,放心拉

在这里插入图片描述

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文件后,你会发现本地也会有,这就同步了,因为启动容器时已经把主机和容器相应的目录进行
映射了;

在这里插入图片描述
在这里插入图片描述

4.安装pdo_mysql模块

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

docker-php-ext-install pdo_mysql

php -m 打印查看是否安装成功;

在这里插入图片描述

这样安装之后在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

在这里插入图片描述

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

4.测试安装是否成功

修改index.php代码

<?php

phpinfo();

在这里插入图片描述

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

5.修改配置

docker exec -it xy_phpfpm bash

在这里插入图片描述

这个容器中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环境的资料请关注脚本之家其它相关文章!

相关文章

  • CentOS8下的Docker使用详解

    CentOS8下的Docker使用详解

    这篇文章主要介绍了CentOS8下的Docker使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Docker 进阶之镜像分层方案详解

    Docker 进阶之镜像分层方案详解

    这篇文章主要介绍了Docker 进阶之镜像分层详解,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Windows下Docker安装各种软件的详细过程

    Windows下Docker安装各种软件的详细过程

    这篇文章主要介绍了Windows下Docker安装各种软件的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • 用Docker快速构建LEMP环境的方法示例

    用Docker快速构建LEMP环境的方法示例

    这篇文章主要介绍了用Docker快速构建LEMP环境的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • docker5 全功能harbor仓库搭建过程

    docker5 全功能harbor仓库搭建过程

    Harbor是构建企业级私有docker镜像的仓库的开源解决方案,本文给大家分享docker5 全功能harbor仓库搭建过程,感兴趣的朋友一起看看吧
    2021-06-06
  • 使用docker-compose连接到宿主机网络

    使用docker-compose连接到宿主机网络

    这篇文章主要介绍了使用docker-compose连接到宿主机网络,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 在CentOS 7上安装Docker环境的方法与注意事项

    在CentOS 7上安装Docker环境的方法与注意事项

    这篇文章主要介绍了在CentOS 7上安装Docker环境的方法与注意事项,需要的朋友可以参考下
    2016-10-10
  • Docker容器的概念及Docker容器是干什么的

    Docker容器的概念及Docker容器是干什么的

    Docker容器是一种轻量级、可移植的虚拟化技术,用于打包、运输和运行应用程序及其所有依赖项,Docker容器使得开发人员能够更轻松地构建、交付和运行应用程序,同时提高了资源利用率和部署的一致性,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • docker实践之docker-compose部署mysql方式

    docker实践之docker-compose部署mysql方式

    这篇文章主要介绍了docker实践之docker-compose部署mysql方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • 如何进入、退出docker的container实现

    如何进入、退出docker的container实现

    这篇文章主要介绍了如何进入、退出docker的container实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11

最新评论