1 回答

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
您的原始 Dockerfile 不僅僅只是安裝擴(kuò)展mysqli
。
它的入口點(diǎn)如源代碼所示
它還具有如下所示的命令
這些入口點(diǎn)和命令將啟動(dòng)容器并保持其運(yùn)行
現(xiàn)在回到您的修改:
我可以看到 dev_php (PHP 容器的名稱)執(zhí)行了一堆我通常不會(huì)看到的任務(wù)
這是 的輸出docker-php-ext-install mysqli
。你之前沒(méi)有看到它是因?yàn)樗窃跇?gòu)建 docker 鏡像時(shí)完成的。
退出后立即退出,退出代碼為 0
這是預(yù)期的,因?yàn)槊钜淹瓿商幚恚瑳](méi)有其他事情可做。
為了保持容器運(yùn)行,您必須手動(dòng)添加原始入口點(diǎn)和命令。像這樣的事情:
php: ????container_name:?dev_php ????image:?php:7.2-fpm ????ports: ????????-?9000:9000 ????volumes: ????????-?./website:/website ????????-?./php/www.conf:/usr/local/etc/php-fpm.d/www.conf ????environment: ????????MYSQL_USER:?${MYSQL_USER} ????????MYSQL_PASSWORD:?${MYSQL_PASSWORD} ????entrypoint: ????????-?bash ????????-?-c ????command: ????????-?| ??????????docker-php-ext-install?mysqli;?\ ??????????docker-php-entrypoint?php-fpm
我尚未進(jìn)行測(cè)試來(lái)確認(rèn)語(yǔ)法 100% 正確,但您應(yīng)該明白了。重要的是docker-php-entrypoint php-fpm
我的建議是在這種情況下堅(jiān)持使用 Dockerfile。
一個(gè)好的副作用是 Docker 會(huì)緩存構(gòu)建層,因此您無(wú)需
mysqli
每次啟動(dòng)容器時(shí)都等待安裝過(guò)程。您也可以考慮啟用擴(kuò)展
- 1 回答
- 0 關(guān)注
- 339 瀏覽
添加回答
舉報(bào)