基于Docker的PHP調(diào)用基于Docker的Mysql數(shù)據(jù)庫
docker簡介:
Docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的 Linux 機(jī)器上,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機(jī)制,相互之間不會有任何接口。
自從接觸docker以來,一直想實現(xiàn)這種玩法。如下是步驟
1:建立基于docker的mysql,參考文章
Mac上將brew安裝的MySql改用Docker執(zhí)行
2:建立基于docker的php image
在當(dāng)前目錄,建立Dockerfile,內(nèi)容如下
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數(shù)據(jù)庫讀取數(shù)據(jù):
<?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. 執(zhí)行php的容器,參數(shù)如下:
bash docker run -it --rm -v (pwd):/var --link my-mysql-server1:mysql php-mysql:latest php /var/mysql.php
需要注意的地方是--link參數(shù),這里調(diào)用的是名為my-mysql-server1的容器,其在php容器中的host為mysql??梢酝ㄟ^如下命令進(jìn)行驗證:
docker run -it --rm php-mysql ping mysql
以上所述是小編給大家介紹的基于Docker的PHP調(diào)用基于Docker的Mysql數(shù)據(jù)庫,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 利用docker搭建php7和nginx運行環(huán)境全過程(官方鏡像)
- 搭建基于Docker的PHP開發(fā)環(huán)境的詳細(xì)教程
- Docker搭建 Nginx+PHP+MySQL 環(huán)境并部署WordPress實踐
- 利用Docker制作Nginx+PHP鏡像的步驟詳解
- docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法
- Docker 如何布置PHP開發(fā)環(huán)境
- docker完整配置nginx+php+mysql的方法步驟
- 詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案
- Docker搭建自己的PHP開發(fā)環(huán)境
- docker?中搭建php環(huán)境經(jīng)驗分享
相關(guān)文章
使用Nexus創(chuàng)建Docker倉庫的方法步驟
這篇文章主要介紹了使用Nexus創(chuàng)建Docker倉庫的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
云原生自動化應(yīng)用于docker倉庫私有憑據(jù)secret創(chuàng)建
這篇文章主要為大家介紹了云原生自動化應(yīng)用于docker倉庫私有憑據(jù)secret創(chuàng)建,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03
Docker實現(xiàn)進(jìn)入容器內(nèi)部的方法
這篇文章主要介紹了Docker實現(xiàn)進(jìn)入容器內(nèi)部的方法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
Docker實現(xiàn)Mariadb分庫分表及讀寫分離功能
這篇文章主要給大家介紹了關(guān)于Docker實現(xiàn)Mariadb分庫分表及讀寫分離功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
刪除docker容器中內(nèi)容后打包鏡像不變小問題及解決
文章討論了在Docker中處理大壓縮包時遇到的問題,以及如何通過分層存儲和使用`docker load`與`docker import`命令來解決鏡像大小過大的問題2025-03-03

