当前位置:   article > 正文

docker-compose搭建php5.4 nginx mysql环境_docker php5.4

docker php5.4

参考:

https://www.cnblogs.com/cocowool/p/docker-php-dev.html

需求

由于我需要搭建的是项目使用的是php5.4所以我这需要调整下

步骤:

1:准备资料


1.1 文件目录为:

--www

----conf

--------php.conf

----logs

----web

--------index.php

1.2 php.conf内容为:

server {
    listen    80;
    server_name    localhost;

    location / {
        root    /usr/share/nginx/html;
        index    index.html index.htm index.php;
    }

    error_page    500 502 503 504    /50x.html;
    location = /50x.html {
        root    /usr/share/nginx/html;
    }

    location ~ \.php$ {
        fastcgi_pass    php:9000;
        fastcgi_index    index.php;
        fastcgi_param    SCRIPT_FILENAME    /web/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

1.3 index.php内容为:

  1. <?php
  2.   phpinfo();
  3. ?>

1.4 docker-compose.yml 文件内容为

  1. version: "2.3"
  2. services:
  3. nginx:
  4. image: nginx
  5. privileged: true
  6. ports:
  7. - "80:80"
  8. volumes:
  9. - /www/web:/usr/share/nginx/html
  10. - /www/conf:/etc/nginx/conf.d
  11. - /www/logs:/var/log/nginx
  12. networks:
  13. - web-net
  14. php:
  15. image: sugenk/php5.4-fpm
  16. privileged: true
  17. volumes:
  18. - /www/web:/web
  19. networks:
  20. - web-net
  21. mysql:
  22. image: mysql
  23. ports:
  24. - "3306:3306"
  25. environment:
  26. - MYSQL_ROOT_PASSWORD=root
  27. networks:
  28. - web-net
  29. networks:
  30. web-net:

2:执行


到目录下www下执行下列命令


docker-compose up -d

其中 -d表示在后台运行

3:验证


打开浏览器输入http://{服务器IP}/index.php 

,可以看到php是5.4的了

备注:

  1. docker镜像搜索地址,

https://hub.docker.com/,我搜索使用的是php5.4-fpm。


迭代二

测试php链接mysql

步骤一:由于docker-compose 里容器之间可以通过容器名称来连接,所以网站数据库配置文件使用mysql:3306。下面新建文件dbtest.php

  1. <?php
  2. $servername = "mysql:3306";
  3. $username = "root";
  4. $password = "root";
  5. // 创建连接
  6. //$conn = new mysqli($servername, $username, $password);
  7. $mysql_server_name = 'mysql'; //改成自己的mysql数据库服务器
  8. $mysql_username = 'root'; //改成自己的mysql数据库用户名
  9. $mysql_password = 'root'; //改成自己的mysql数据库密码
  10. $mysql_database = 'sys'; //改成自己的mysql数据库名
  11. $conn=mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database); //连接数据库
  12. //连接数据库错误提示
  13. if (mysqli_connect_errno($conn)) {
  14. die("连接 MySQL 失败: " . mysqli_connect_error());
  15. }else{
  16. mysqli_query($conn,"set names utf8"); //数据库编码格式
  17. header ( "Content-type:text/html;charset=utf-8" ); //统一输出编码为utf-8
  18. $con = mysqli_connect ( $servername, $username, $password ); //数据库连接
  19. if (mysqli_select_db ( $con, 'sys' )) {
  20. echo "数据库ok";
  21. } else {
  22. echo '数据库错误';
  23. }
  24. }
  25. ?>

步骤二:

新建验证,浏览器输入:http://服务器IP/dbtest.php

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/829040
推荐阅读
相关标签
  

闽ICP备14008679号