基于Docker的PHP调用基于Docker的Mysql数据库_docker

docker简介:

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

自从接触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

以上所述是小编给大家介绍的基于Docker的PHP调用基于Docker的Mysql数据库,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索mysql
, php
docker
php调用mysql数据库、docker mysql数据库、docker php mysql、php连接docker mysql、html5调用mysql数据库,以便于您获取更多的相关知识。

时间: 2024-08-22 01:58:34

基于Docker的PHP调用基于Docker的Mysql数据库_docker的相关文章

Moving to Docker(三)基于Docker的Rails自动化部署

本文讲的是Moving to Docker(三)基于Docker的Rails自动化部署,[编者的话]本文是<Moving to Docker>系列的最后一篇,整个系列讲述了创业公司如何把基础服务迁移到Docker上,以及迁移过程中的经验教训.本文主要是讲述如何将一个Rails应用自动化部署在Heroku上,并详细介绍了镜像的创建.自动化脚本的编写.rake打包执行和基本测试. 这是本系列的第三篇,整个系列介绍了我们公司如何把基础框架从PaaS移植到Docker上. 第一篇:介绍了我们在接触Do

基于容器的自动构建:Docker在美团的应用

基于容器的自动构建:Docker在美团的应用 自动构建系统是从美团的自动部署系统发展出来的一个新功能.每当开发人员提交代码到仓库后,系统会自动根据开发人员定制的构建配置,启动新的Docker容器,在其中对源代码进行构建(build),包括编译(如Java.C++和Go).预处理(如JavaScript和CSS).压缩(如图片)等操作,生成最终需要上线的程序包. (题图来自:tutum.co) 背景和问题 美团的代码自动部署系统承载着美团所有业务的代码上线工作.代码部署系统一开始基于简单的Bash

[Docker系列·2] 搭建基于Docker的Nginx服务器

docker命令别名 ~/.bashrc # .bashrc alias d="sudo docker" docker的nginx工作目录 /home/erichan/d/nginx docker的Dockerfile # Version: 0.0.1 FROM feuyeux/ssd MAINTAINER Eric Han "feuyeux@gmail.com" RUN apt-get update RUN apt-get -yq install nginx RU

如何实现 Android 调用基于 IBM i 的 Web 服务

实现 Android 调用基于 IBM i 的 Web 服务 作为 Internet 异构环境下的互操作技术,Web 服务被广泛应用.由于 Web 服务具有跨语言.跨平台等特点,我们可以通过 Android 等智能设备,以 Web 服务的方式重用 IBM i 服务器端的 RPG.COBOL 等业务程序.本文的主要目标是,结合 IBM i 支持的 Web 服务组件,指导读者如何编写基于 Android 的 Web 服务客户端程序,调用 IBM i 服务器端的 Web 服务. 从结构上,本文主要分为

JavaScript跨域调用基于JSON的RESTful API_javascript技巧

1. 基本术语 AJAX(Asynchronous JavaScript And XML,异步JavaScript和XML):AJAX是一种用于创建快速动态网页的技术,通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. JSON(JavaScript Object Notation):JSON是一种轻量级的数据交换格式,可以看成是由大括号包裹起来的多个"key/value"对,格式如下:{"f

阿里大鱼短信接口怎么调用 基于 springmvc mybatis框架,求大神解决?

问题描述 阿里大鱼短信接口怎么调用 基于 springmvc mybatis框架,求大神解决? 给安卓手机端提供 获取短信验证码的功能和手机注册修改密码的功能: 开发工具:eclipse; 框架 spring springmvc mybatis; 数据库 mysql; 如果有 demo可以下载最好 解决方案 手机的话是不是要先和手机运行商联系好,才能实现

深入浅出Docker(四):Docker的集成测试部署之道

深入浅出Docker(四):Docker的集成测试部署之道 1. 背景 敏捷开发已经流行了很长时间,如今有越来越多的企业开始践行敏捷开发所提倡的以人为中心.迭代.循序渐进的开发理念.在这样的场景下引入Docker技术,首要目的就是使用Docker提供的虚拟化方式,给开发团队建立一套可以复用的开发环境,让开发环境可以通过Image的形式分享给项目的所有开发成员,以简化开发环境的搭建.但是,在没有Docker技术之前就已经有类如Vagrant的开发环境分发技术,软件开发者一样可以创建类似需求的环境配

关于docker的15个小tip(技巧)_docker

1. 获取最近运行容器的id 这是我们经常会用到的一个操作,按照官方示例,你可以这样做(环境ubuntu): $ ID=$(docker run ubuntu echo hello world) hello world $ docker commit $ID helloworld fd08a884dc79 这种方式在编写脚本的时候很有用,比如你想在脚本中批量获取id,然后进一步操作.但是这种方式要求你必须给ID赋值,如果是直接敲命令,这样做就不太方便了. 这时,你可以换一种方式: $ alias

Docker 配置固定IP及桥接的实现方法_docker

docker默认使用bridge模式,通过网桥连接到宿主机,而容器内部的ip则从网桥所在的ip段取未用的ip.这样做一个不方便的地方在于容器内部的ip不是固定的,想要连接容器时只能通过映射到宿主机的端口,因而有很多项目使用overlay来为docker提供网络的配置,比如Pipework.Flannel.Kubernetes.Weave.opencontrail等. 想要使用overlay来为docker配置网络,需要首先了解下docker的网络模式: 一.Docker的四种网络模式 Docke