Zend Studio使用教程:在Docker容器中調(diào)試PHP Web應(yīng)用(三)
本教程為大家介紹的是一個全面的演示,從Docker Hub中提取合適的鏡像、運行一個容器到調(diào)試PHP代碼。該演示需要使用Zend Studio 13,因為它引入了全新的Docker Tooling。
注意:所描述的場景仍然可以使用Zend Studio早期的版本,但任何Docker管理操作需要在命令終端中執(zhí)行。
5. 從鏡像中運行Docker容器
我們在本地系統(tǒng)中擁有Docker鏡像。我們需要啟動一個Docker容器,并將容器的Apache服務(wù)器的HTTP端口映射到本地系統(tǒng)的一個端口上。我們需要將容器的Apache服務(wù)器的根文檔映射到本地系統(tǒng)的文件夾上。這些映射對調(diào)試Docker容器上的PHP代碼至關(guān)重要。
創(chuàng)建容器是通過在Docker Image視圖中選擇tommylau/xdebug鏡像,然后單擊Run Image工具按鈕來完成的。有一些重要的設(shè)置,我們需要在向?qū)е袑⑵鋸棾觯?/p>
- 將容器的Apache服務(wù)器的HTTP端口映射到本地系統(tǒng)上的端口:
- 取消選中“Publish all exposed ports to random ports on the host interfaces”復(fù)選框
- (不要錯過這個?。┻x中下表中第一行的復(fù)選框(Container Port 80)
- 單擊Edit…按鈕
- 將主機(jī)端口設(shè)置為本地機(jī)器上的一些空閑端口,例如8080
- 單擊OK按鈕關(guān)閉顯示容器端口的對話框
- 將容器的Apache服務(wù)器的根文檔映射到本地系統(tǒng)的文件夾上
- 單擊Next按鈕跳轉(zhuǎn)到第二個向?qū)ы撁?/li>
- 單擊Data Volumes組的Add按鈕
- 輸入“/var/www/html”作為容器路徑
- 選擇“Mount a host directory or host file”單選框
- 單擊Directory按鈕,并瀏覽本地文件系統(tǒng)上的一些空目錄,例如/home/raev/www
- 單擊OK按鈕來關(guān)閉Data Volume對話框
- (不要錯過這個!)選擇表中新添加的data volume復(fù)選框
單擊Finish按鈕將啟動Docker容器。它將出現(xiàn)在Docker Explorer和Docker Containers視圖中,啟動日志可以在控制臺視圖中看到。
我們可以通過請求映射到本地系統(tǒng)容器的HTTP端口,即在Web瀏覽器中請求http://localhost:8080來測試容器是否正在工作。瀏覽器應(yīng)顯示“禁止”頁面,這表明容器正常,因為我們使用Docker鏡像配置Apache服務(wù)器。這個錯誤實際上證明Web瀏覽器請求的Apache服務(wù)器在我們的Docker容器中運行。其他訪問日志將打印在控制臺視圖中。