提示:這里可以添加本文要記錄的大概內容:
例如:隨著(zhù)人工智能的不斷發(fā)展,機器學(xué)習這門(mén)技術(shù)也越來(lái)越重要,很多人都開(kāi)啟了學(xué)習機器學(xué)習,本文就介紹了機器學(xué)習的基礎內容。
提示:以下是本篇文章正文內容,下面案例可供參考
docker pull mysql:5.6
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=xy123456 --name xy_mysql mysql:5.6
參數說(shuō)明:
-d 讓容器在后臺運動(dòng)
-p 添加主機到容器的端口映射
-e 設置mysql環(huán)境變量,設置root的初始密碼
–name 給容器取名字
最后一個(gè)參數是鏡像名稱(chēng),為拉取鏡像的名稱(chēng)
docker pull php:7.0-fpm
也可拉docker pull php:7.4.20-fpm docker pull php:7.3.28-fpm 這些版本在倉庫里都是存在,放心拉
docker run -d -v D:/docker/nginx:/var/www/html -p 9000:9000 --link xy_mysql:mysql --name xy_phpfpm php:7.0-fpm
參數說(shuō)明:
-d 讓容器在后臺運動(dòng)
-p 添加主機到容器的端口映射
-v 添加目錄映射,主機上的D:/docker/nginx映射到/var/www/html ,即同步目錄下內容.'D:/docker/nginx'這個(gè)主機下的目錄你直接復制你想要
寫(xiě)代碼的目錄即可,$PWD如果有效的話(huà)是指當前目錄,我是因為使用此參數報錯,所以直接復制粘貼了路徑.
–name 給容器取名字
–link 與另外一個(gè)容器建立聯(lián)系,這樣可以在當前容器去使用另一個(gè)容器的服務(wù)
最后一個(gè)參數是鏡像名稱(chēng),為拉取鏡像的名稱(chēng)
docker exec -it xy_phpfpm bash
參數說(shuō)明
-t 在容器里生產(chǎn)一個(gè)偽終端
-i 對容器內的標準輸入 (STDIN) 進(jìn)行交互
在/var/www/html/下創(chuàng )建一個(gè)index.php文件后,你會(huì )發(fā)現本地也會(huì )有,這就同步了,因為啟動(dòng)容器時(shí)已經(jīng)把主機和容器相應的目錄進(jìn)行
映射了;
因之后要使用pdo模塊進(jìn)行測試,所以安裝pdo_mysql模塊.
docker-php-ext-install pdo_mysql
php -m 打印查看是否安裝成功;
這樣安裝之后在phpinfo()打印后不一定會(huì )顯示擴展,之后測試會(huì )有修改的步驟
docker pull nginx:1.10.3
docker run -d -p 80:80 -v D:/docker/nginx:/var/www/html --link xy_phpfpm:phpfpm --name xy_nginx nginx:1.10.3
docker exec -it xy_nginx bash
這里推薦去 /etc/nginx/conf.d/default.conf下去更改;
fastcgi_pass 寫(xiě)php:7.0-fpm:9000 別寫(xiě)起的別名可能會(huì )失效;
root寫(xiě)成之前php容器設置的代碼目錄;
修改index.php代碼
<?php phpinfo();
這個(gè)在使用之前安裝的命令之后phpinfo()并沒(méi)有mysql,需要進(jìn)入php.ini中去更改
docker exec -it xy_phpfpm bash
這個(gè)容器中php.ini 在/usr/local/etc/php下 php.ini-development php.ini-production
這兩個(gè)文件就是php.ini 文件是一模一樣 看名字就知道什么意思了
把extension=php_pdo_mysql.dll擴展放開(kāi)就可以
修改index.php代碼
try { $con = new PDO('mysql:host=xy_mysql;dbname=mysql', 'root', 'xy123456'); $con->query('SET NAMES UTF8'); $res = $con->query('select * from user'); while ($row = $res->fetch(PDO::FETCH_ASSOC)) { // echo "id:{$row['id']} name:{$row['name']}"; print_r($row); } } catch (PDOException $e) { echo '錯誤原因:' . $e->getMessage(); }
如果沒(méi)報錯,則為成功
成功則初級環(huán)境搭建就ok了,整個(gè)過(guò)程搭建要細心,在配置文件的時(shí)候多查資料
以上就是Docker搭建LNMP環(huán)境 的詳細內容,更多關(guān)于Docker搭建LNMP環(huán)境的資料請關(guān)注腳本之家其它相關(guān)文章!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站