1 回答

TA貢獻2012條經驗 獲得超12個贊
修復圖像的方法有兩種。由于我找不到圖像 digitalocean/php,因此我將在示例中使用 php:7.4-fpm。
第一種方式: 從容器中復制文件并使用它來構建您自己的映像:
創建 Dockerfile:
FROM php:7.4-fpm
COPY ./php-fpm.conf /usr/local/etc/php-fpm.conf
然后:
docker run --detach --name php php:7.4-fpm tail -f /dev/null
docker cp php:/usr/local/etc/php-fpm.conf php-fpm.conf
docker stop php
docker rm -v php
# Edit php-fpm.conf
docker build --tag myphp-fm .
docker run --detach --name php myphp-fpm
然后你就可以根據固定的鏡像運行容器了。
第二種方式:
使用損壞的映像運行 shell,修復文件并使用 shell 容器創建新映像
docker run -it --name php php:7.4-fpm bash
# Edit /usr/local/etc/php-fpm.conf
# If you install any additional tools remember to remove them afterwards
# and clean any cache's
# Once you're done exit the shell, thus stopping the container
docker commit -a "you" -m "/usr/local/etc/php-fpm.conf fix" php myphp-fpm
docker stop php
docker rm -v php
docker run --detach --name php myphp-fpm
然后您再次獲得基于固定映像的運行容器。
當然,您可以按照一開始運行原始映像的任何方式來運行新映像。
我推薦第一種方法,因為它更容易在容器外編輯文件。
- 1 回答
- 0 關注
- 186 瀏覽
添加回答
舉報