基於Docker的PHP調用基於Docker的Mysql資料庫_docker

來源:互聯網
上載者:User

docker簡介:

Docker 是一個開源的應用程式容器引擎,讓開發人員可以打包他們的應用以及依賴包到一個可移植的容器中,然後發布到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。

自從接觸docker以來,一直想實現這種玩法。如下是步驟

1:建立基於docker的mysql,參考文章

Mac上將brew安裝的MySql改用Docker執行

2:建立基於docker的php image

在目前的目錄,建立Dockerfile,內容如下

FROM php:7.0-cliMAINTAINER 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資料庫,希望對大家有所協助,如果大家有任何疑問請給我留言,小編會及時回複大家的。在此也非常感謝大家對雲棲社區網站的支援!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.