簡體   English   中英

如何更新 Gitlab.com CI 中使用的 docker 映像

[英]How to update docker image used in Gitlab.com CI

I have a project build in gitlab.com CI that uses the php:8.0 image on dockerhub , which I can see is up to date with PHP 8.0.13. 但是,當我的 CI 在 gitlab.com 上運行時,它使用的過時版本會破壞我的構建:

Your requirements could not be resolved to an installable set of packages.
Problem 1
  - Installation request for symfony/event-dispatcher v6.0.0 -> satisfiable by symfony/event-dispatcher[v6.0.0].
  - symfony/event-dispatcher v6.0.0 requires php >=8.0.2 -> your PHP version (8.0.1) does not satisfy that requirement.

您可以在這里看到它使用的是 PHP 8.0.1 而不是任何更新的版本。

我沒有直接使用php:8.0圖像,而是通過edbizarro/gitlab-ci-pipeline-php圖像使用php:8.0圖像作為其Z60F5AD192689E6E5307E中的基本圖像。 我猜問題出在這里,因為這個 package 已經有一段時間沒有更新了。

如何讓 gitlab 使用更新版本的圖像?

您可以基於來自 gitlab-ci-pipeline-php 的原始8.0 Dockerfile創建自己的 docker 映像。

為此,只需克隆 git 存儲庫,創建新的 Dockerfile 並構建它。 您可以將其推送到 docker 集線器,或者您可以使用 Gitlab 的 docker 注冊表來存儲您的 docker 圖像並將其用作項目的基礎。

所以問題是圖像已經過時了,除了創建自己的圖像之外我無能為力,這真的不是我想做的事情。

幸運的是,我找到了一個解決方案——一個不同的圖像可以直接替換,而且效果很好。 所以我更新了我的.gitlab-ci.yml文件說:

image: lorisleiva/laravel-docker:8.0

並且所有測試都在運行並再次通過。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM