howto:docker+nginx + php-fpm + xdebug in macOs

折騰一天加所有半夜锣尉,終于知道怎么在macos下配置nginx + php-fpm + xdebug的docker鏡像文件。
記錄下來耙旦,以備后用唆涝。
這不是一個教程悄但,而是關鍵點記錄與指導。所以就不要怪我說的云里霧里了石抡。
你在參考別人教程中遇到問題,看看這個助泽。
今天寫的另外一個相關文章應該有用:Docker中l(wèi)inux下安裝xdebug
先pull一個nginx + php-fpm的docker image啰扛。
發(fā)現沒有裝xdebug嚎京,沒法調試代碼,那不純粹抓瞎嗎隐解?
按著網上步驟一步步來鞍帝,始終不見vscode中紅圈變黃。以為IDE問題煞茫,又下載PHPStorm問題亦然帕涌。
好了,現在說核心問題:
就是php.ihi续徽,應該這樣在尾部加上這些蚓曼,注意其中macOs的特殊性:

[XDebug] 
zend_extension= /usr/local/webserver/php/modules/xdebug.so 
xdebug.profiler_enable=on 
xdebug.trace_output_dir="/usr/local/webserver/php/xdebug_trace" 
xdebug.profiler_output_dir="/usr/local/webserver/php/xdebug_profiler" 
dekey = "docker" 
xdebug.remote_connect_back = 0 
xdebug.remote_host = docker.for.mac.localhost 
xdebug.remote_enable = 1 
xdebug.remote_handler = "dbgp" 
xdebug.remote_port = 9000 
xdebug.remote_log = "/var/log/dnmp/php.xdebug.log" 
xdebug.remote_autostart = 1

xdebug.remote_host 這個地址是IDE(VSCODE、PHPSTORM)所寄居主機的IP钦扭。
xdebug.remote_port 也是IDE要填寫的端口纫版。
如果要填寫主機的真實IP,它可能是變化的客情,比如你換了WIFI其弊。
docker.for.mac.localhost是寄居主機的IP代號,應該是docker中定義的膀斋。
下面是些有關數據梭伐,記錄下來。
php-fpm:

/usr/local/sbin/php-fpm

php.ihi:(php.ini是php運行核心配置文件)

/usr/local/etc/php
vi /usr/local/etc/php/php.ini

php-fpm.conf: 是 php-fpm 進程服務的配置文件

/usr/local/etc/php-fpm.conf

它里面只有一句:include=etc/php-fpm.d/*.conf

ls /usr/local/etc/php-fpm.d/

docker.conf www.conf www.conf.default zz-docker.conf

www.conf: php-fpm 進程服務的擴展配置文件

/usr/local/etc/php-fpm.d/www.conf

listen = /var/run/php-fpm.sock
nginx.conf:

/etc/nginx/nginx.conf

查看是否啟動成功:

netstat -lnt | grep 9000

docker運行命令:

docker run -it \
 --cpuset-cpus 0 \
 --memory 512mb \
 -v /Volumes/data/www/web:/var/www/html \
 -e DISPLAY=unix$DISPLAY \
 -p 127.0.0.1:80:80 \
 --name npfx \
 --link mariadb:php_mariadb \
 --link redis:php_redis \
 nginx-php-fpm-xdebug

需要說明:類似這樣的映射: -p 9000:9000 是沒必要的仰担,許多教程要求這樣糊识,因為xdebug.remote_port是docker內部訪問外部的端口,映射有什么用惰匙。而80端口是docker內部提供的技掏,所以要映射,以便外部瀏覽器調用项鬼。

Docker中重啟php-fpm:

ps 
kill xx #php-fpm: master process (/usr/local/etc/php-fpm.d/www.conf)

[22-Apr-2019 07:54:40] NOTICE: configuration file /usr/local/etc/php-fpm.conf test is successful
安裝好后哑梳,需要重新生成一個images: (docker commit 容器名 名稱)

docker commit b165d24ed778 ngfx_last

VSCODE 配置 launch.json:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [

        {
            "name": "Listen for XDebug",
            "type": "php",
            "request": "launch",
            "port": 9000,
            "stopOnEntry": true,//運行開始斷點,用于調試绘盟。
            "pathMappings": { // "容器中對應的項目地址": "本機項目地址" // 絕對路徑 
                "/var/www/html/":"/Volumes/data/www/web/"
            }
        },
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 9000
        }
    ]
}

PHPSTORM就不說了鸠真,其實VSCODE足夠簡單好用功能強大。
FireFox配置:
在擴展中安裝xdebug-ext.然后在firefox地址欄后面龄毡,激活那只紅色瓢蟲就行了吠卷。
PHP調試挺麻煩,要配置很多東西沦零,那像golang好用祭隔。
但做網頁PHP有很多現成的東西,這是個給懶惰者的誘惑路操。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末疾渴,一起剝皮案震驚了整個濱河市千贯,隨后出現的幾起案子,更是在濱河造成了極大的恐慌搞坝,老刑警劉巖搔谴,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異桩撮,居然都是意外死亡敦第,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門店量,熙熙樓的掌柜王于貴愁眉苦臉地迎上來芜果,“玉大人,你說我怎么就攤上這事垫桂∈δ唬” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵诬滩,是天一觀的道長霹粥。 經常有香客問我,道長疼鸟,這世上最難降的妖魔是什么后控? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮空镜,結果婚禮上浩淘,老公的妹妹穿的比我還像新娘。我一直安慰自己吴攒,他們只是感情好张抄,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著洼怔,像睡著了一般署惯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上镣隶,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天极谊,我揣著相機與錄音,去河邊找鬼安岂。 笑死轻猖,一個胖子當著我的面吹牛,可吹牛的內容都是我干的域那。 我是一名探鬼主播咙边,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了败许?” 一聲冷哼從身側響起友瘤,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎檐束,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體束倍,經...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡被丧,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了绪妹。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片甥桂。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖邮旷,靈堂內的尸體忽然破棺而出黄选,到底是詐尸還是另有隱情,我是刑警寧澤婶肩,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布办陷,位于F島的核電站,受9級特大地震影響律歼,放射性物質發(fā)生泄漏民镜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一险毁、第九天 我趴在偏房一處隱蔽的房頂上張望制圈。 院中可真熱鬧,春花似錦畔况、人聲如沸鲸鹦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽馋嗜。三九已至,卻和暖如春域庇,著一層夾襖步出監(jiān)牢的瞬間嵌戈,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工听皿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留熟呛,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓尉姨,卻偏偏與公主長得像庵朝,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內容