Skip to main content
  • Create new account
  • Reset your password
张文涛的个人博客
致力于提供Drupal开发,实践等方面的精品资讯

Main navigation

  • 首页
  • 关于
  • Glossary
  • 分享

Breadcrumb

  • Home
  • 基于docker的php调用基于docker的mysql数据库
By admin | 10:38 PM CST, Sat November 05, 2016

自从接触docker以来,一直想实现这种玩法。如下是步骤

  • 1:建立基于docker的mysql,参考文章

Mac上将brew安装的MySql改用Docker执行

  • 2:建立基于docker的php image

在当前目录,建立Dockerfile,内容如下

FROM php:7.0-cli
MAINTAINER Terry Zhang <zterry@qq.com>

RUN docker-php-ext-install pdo_mysql mysqli
  • 3.建立php镜像

docker build -t php-mysql .
  • 4. 编写php脚本,可以从mysql数据库读取数据:

<?php
$host = 'mysql';
$user = 'root';
$pwd = 'password';
$db = 'test';
$mysqli = new mysqli($host, $user, $pwd, $db);

if ($mysqli->connect_errno) {
  echo "Errno: " . $mysqli->connect_errno . "\n";
}

$sql = 'SELECT * FROM users';
if ($res = $mysqli->query($sql)) {
    while ($row = $res->fetch_assoc()) {
        print_r($row);
    }
}
?>
  • 5. 执行php的容器,参数如下:bash docker run -it --rm -v (pwd):/var --link my-mysql-server1:mysql php-mysql:latest php /var/mysql.php

需要注意的地方是--link参数,这里调用的是名为my-mysql-server1的容器,其在php容器中的host为mysql。可以通过如下命令进行验证:

docker run -it --rm php-mysql ping mysql

如果一切顺利,则会看到输出结果;如果有问题,自行调试。


Glossary

  • May 2023 (7)
  • March 2023 (1)
  • October 2022 (1)
  • October 2021 (2)
  • August 2021 (4)
  • June 2021 (2)
  • May 2021 (1)
  • April 2021 (2)
  • November 2020 (1)
  • June 2020 (2)
  • December 2019 (2)
  • November 2019 (1)
  • August 2019 (1)
  • February 2018 (1)
  • October 2017 (1)
  • September 2017 (1)
  • July 2017 (1)
  • June 2017 (2)
  • May 2017 (1)
  • March 2017 (3)
  • December 2016 (2)
  • November 2016 (4)
  • October 2016 (3)
  • June 2016 (1)
  • December 2015 (1)
  • November 2015 (6)
  • October 2015 (2)
  • September 2015 (1)
  • August 2015 (1)
  • July 2015 (1)
  • June 2015 (1)
  • May 2015 (1)
  • March 2015 (1)
  • January 2015 (1)
  • December 2014 (3)
  • October 2014 (5)
  • September 2014 (3)
  • August 2014 (1)
  • July 2014 (1)
  • June 2014 (1)
  • May 2014 (1)
  • April 2014 (2)
  • March 2014 (2)
  • February 2014 (2)
  • January 2014 (4)
  • December 2013 (1)
  • March 2013 (2)
  • February 2013 (2)
  • December 2012 (2)
  • November 2012 (4)
  • October 2012 (1)
  • September 2012 (6)
  • August 2012 (15)
  • July 2012 (5)
  • June 2012 (13)
  • May 2012 (9)
  • April 2012 (8)
  • March 2012 (9)
  • February 2012 (3)
  • January 2012 (1)
  • December 2011 (1)
  • November 2011 (6)
  • October 2011 (2)
  • September 2011 (17)
  • August 2011 (4)
  • July 2011 (4)
  • June 2011 (5)
  • May 2011 (4)

Copyright © 2025

苏ICP备14044171号-1