Docker
在 docker 容器中升級 PHP
所以我有一個執行 PHP 7.2.34 服務的 docker 容器,如下所示:-
碼頭工人-compose.yml
version: '3' services: #PHP Service app: build: context: . dockerfile: Dockerfile image: digitalocean.com/php container_name: app ...
Dockerfile
FROM php:7.2-fpm ...
我沒有重新啟動 Nginx,而是簡單地重新啟動容器,例如:-
docker stop app db webserver docker rm app db webserver docker-compose up -d
我想升級到 PHP 7.4+ 甚至 8。我試圖簡單地替換
FROM php:7.2-fpm
為FROM php:7.4-fpm
但phpinfo()
報告 PHP 版本沒有變化?是否:image: digitalocean.com/php
升級時有什麼意義?
此命令將更新您的圖像並強制停止並重新創建容器:
docker-compose up -d --force-recreate --build
要驗證執行,
docker exec -it app php -v
這將返回 php 版本資訊。# The new image name when running `docker-compose up/build` image: digitalocean.com/php
說明:
該命令
docker-compose up
將建構一個不存在的圖像。要強制建構新圖像,請添加
--build
標誌或執行docker-compose build
然後docker-compose up
如果要強制 Compose 停止並重新創建所有容器,請使用該
--force-recreate
標誌。
--build
在啟動容器之前建構鏡像。