- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 GitLab 中有一个节 pip 项目。我有 CI 设置来构建 Docker 镜像并将其上传到 AWS ECR。 3 天前工作正常。
.gitlab-ci.yml
image: docker:latest
services:
- docker:dind
stages:
- build
variables:
REPOSITORY_URL: 708604513256.dkr.ecr.ap-south-1.amazonaws.com/foo-bar/api:latest
before_script:
- apk add --no-cache curl jq python py-pip
- pip install awscli
build:
stage: build
only:
- master
script:
- $(aws ecr get-login --no-include-email --region ap-south-1)
- docker build -t $REPOSITORY_URL .
- docker push $REPOSITORY_URL
日志
Running with gitlab-runner 13.0.0 (c127439c)
on docker-auto-scale fa6cab46
Preparing the "docker+machine" executor
Using Docker executor with image docker:latest ...
Starting service docker:dind ...
Pulling docker image docker:dind ...
Using docker image sha256:ded0f436a6a380f373f1840de86b6887cff86600946490b3a44a890bc3d95657 for docker:dind ...
Waiting for services to be up and running...
*** WARNING: Service runner-fa6cab46-project-17319365-concurrent-0-f592aab325d1bb8d-docker-0 probably didn't start properly.
Health check error:
service "runner-fa6cab46-project-17319365-concurrent-0-f592aab325d1bb8d-docker-0-wait-for-service" timeout
Health check container logs:
Service container logs:
2020-06-03T12:35:33.145705974Z time="2020-06-03T12:35:33.145584090Z" level=info msg="Starting up"
2020-06-03T12:35:33.147344480Z time="2020-06-03T12:35:33.147268652Z" level=warning msg="could not change group /var/run/docker.sock to docker: group docker not found"
2020-06-03T12:35:33.147688820Z time="2020-06-03T12:35:33.147629824Z" level=warning msg="[!] DON'T BIND ON ANY IP ADDRESS WITHOUT setting --tlsverify IF YOU DON'T KNOW WHAT YOU'RE DOING [!]"
2020-06-03T12:35:33.148653260Z time="2020-06-03T12:35:33.148586467Z" level=info msg="libcontainerd: started new containerd process" pid=18
2020-06-03T12:35:33.148776016Z time="2020-06-03T12:35:33.148727154Z" level=info msg="parsed scheme: \"unix\"" module=grpc
2020-06-03T12:35:33.148826946Z time="2020-06-03T12:35:33.148797744Z" level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
2020-06-03T12:35:33.148911802Z time="2020-06-03T12:35:33.148873819Z" level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock 0 <nil>}] <nil>}" module=grpc
2020-06-03T12:35:33.148958763Z time="2020-06-03T12:35:33.148932476Z" level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
2020-06-03T12:35:33.200268502Z time="2020-06-03T12:35:33.200146030Z" level=info msg="starting containerd" revision=7ad184331fa3e55e52b890ea95e65ba581ae3429 version=v1.2.13
2020-06-03T12:35:33.200692597Z time="2020-06-03T12:35:33.200637628Z" level=info msg="loading plugin "io.containerd.content.v1.content"..." type=io.containerd.content.v1
2020-06-03T12:35:33.200867133Z time="2020-06-03T12:35:33.200823919Z" level=info msg="loading plugin "io.containerd.snapshotter.v1.btrfs"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.201154379Z time="2020-06-03T12:35:33.201104050Z" level=warning msg="failed to load plugin io.containerd.snapshotter.v1.btrfs" error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"
2020-06-03T12:35:33.201216139Z time="2020-06-03T12:35:33.201181022Z" level=info msg="loading plugin "io.containerd.snapshotter.v1.aufs"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.205676519Z time="2020-06-03T12:35:33.205599239Z" level=warning msg="failed to load plugin io.containerd.snapshotter.v1.aufs" error="modprobe aufs failed: "ip: can't find device 'aufs'\nmodprobe: can't change directory to '/lib/modules': No such file or directory\n": exit status 1"
2020-06-03T12:35:33.205881591Z time="2020-06-03T12:35:33.205836399Z" level=info msg="loading plugin "io.containerd.snapshotter.v1.native"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.206055158Z time="2020-06-03T12:35:33.206013249Z" level=info msg="loading plugin "io.containerd.snapshotter.v1.overlayfs"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.206518393Z time="2020-06-03T12:35:33.206440358Z" level=info msg="loading plugin "io.containerd.snapshotter.v1.zfs"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.206807173Z time="2020-06-03T12:35:33.206761104Z" level=info msg="skip loading plugin "io.containerd.snapshotter.v1.zfs"..." type=io.containerd.snapshotter.v1
2020-06-03T12:35:33.206870377Z time="2020-06-03T12:35:33.206833950Z" level=info msg="loading plugin "io.containerd.metadata.v1.bolt"..." type=io.containerd.metadata.v1
2020-06-03T12:35:33.206991282Z time="2020-06-03T12:35:33.206951423Z" level=warning msg="could not use snapshotter btrfs in metadata plugin" error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.btrfs must be a btrfs filesystem to be used with the btrfs snapshotter"
2020-06-03T12:35:33.207038857Z time="2020-06-03T12:35:33.207012167Z" level=warning msg="could not use snapshotter aufs in metadata plugin" error="modprobe aufs failed: "ip: can't find device 'aufs'\nmodprobe: can't change directory to '/lib/modules': No such file or directory\n": exit status 1"
2020-06-03T12:35:33.207105105Z time="2020-06-03T12:35:33.207071463Z" level=warning msg="could not use snapshotter zfs in metadata plugin" error="path /var/lib/docker/containerd/daemon/io.containerd.snapshotter.v1.zfs must be a zfs filesystem to be used with the zfs snapshotter: skip plugin"
2020-06-03T12:35:33.214130639Z time="2020-06-03T12:35:33.214040730Z" level=info msg="loading plugin "io.containerd.differ.v1.walking"..." type=io.containerd.differ.v1
2020-06-03T12:35:33.214248026Z time="2020-06-03T12:35:33.214196991Z" level=info msg="loading plugin "io.containerd.gc.v1.scheduler"..." type=io.containerd.gc.v1
2020-06-03T12:35:33.228942452Z time="2020-06-03T12:35:33.221454702Z" level=info msg="loading plugin "io.containerd.service.v1.containers-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.228984856Z time="2020-06-03T12:35:33.221493565Z" level=info msg="loading plugin "io.containerd.service.v1.content-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.228990005Z time="2020-06-03T12:35:33.221505991Z" level=info msg="loading plugin "io.containerd.service.v1.diff-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.228993696Z time="2020-06-03T12:35:33.221519285Z" level=info msg="loading plugin "io.containerd.service.v1.images-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.228997084Z time="2020-06-03T12:35:33.221531861Z" level=info msg="loading plugin "io.containerd.service.v1.leases-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.229000512Z time="2020-06-03T12:35:33.221542620Z" level=info msg="loading plugin "io.containerd.service.v1.namespaces-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.229003761Z time="2020-06-03T12:35:33.221553454Z" level=info msg="loading plugin "io.containerd.service.v1.snapshots-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.229006982Z time="2020-06-03T12:35:33.221564536Z" level=info msg="loading plugin "io.containerd.runtime.v1.linux"..." type=io.containerd.runtime.v1
2020-06-03T12:35:33.229010338Z time="2020-06-03T12:35:33.221759106Z" level=info msg="loading plugin "io.containerd.runtime.v2.task"..." type=io.containerd.runtime.v2
2020-06-03T12:35:33.229013595Z time="2020-06-03T12:35:33.221856820Z" level=info msg="loading plugin "io.containerd.monitor.v1.cgroups"..." type=io.containerd.monitor.v1
2020-06-03T12:35:33.229016741Z time="2020-06-03T12:35:33.222190164Z" level=info msg="loading plugin "io.containerd.service.v1.tasks-service"..." type=io.containerd.service.v1
2020-06-03T12:35:33.229019947Z time="2020-06-03T12:35:33.222213414Z" level=info msg="loading plugin "io.containerd.internal.v1.restart"..." type=io.containerd.internal.v1
2020-06-03T12:35:33.229032207Z time="2020-06-03T12:35:33.225029858Z" level=info msg="loading plugin "io.containerd.grpc.v1.containers"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229035721Z time="2020-06-03T12:35:33.225067184Z" level=info msg="loading plugin "io.containerd.grpc.v1.content"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229052495Z time="2020-06-03T12:35:33.225080743Z" level=info msg="loading plugin "io.containerd.grpc.v1.diff"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229056388Z time="2020-06-03T12:35:33.225092135Z" level=info msg="loading plugin "io.containerd.grpc.v1.events"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229059541Z time="2020-06-03T12:35:33.225103233Z" level=info msg="loading plugin "io.containerd.grpc.v1.healthcheck"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229062675Z time="2020-06-03T12:35:33.225113980Z" level=info msg="loading plugin "io.containerd.grpc.v1.images"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229065735Z time="2020-06-03T12:35:33.225123860Z" level=info msg="loading plugin "io.containerd.grpc.v1.leases"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229068798Z time="2020-06-03T12:35:33.225163545Z" level=info msg="loading plugin "io.containerd.grpc.v1.namespaces"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229071960Z time="2020-06-03T12:35:33.225174404Z" level=info msg="loading plugin "io.containerd.internal.v1.opt"..." type=io.containerd.internal.v1
2020-06-03T12:35:33.229075191Z time="2020-06-03T12:35:33.225684688Z" level=info msg="loading plugin "io.containerd.grpc.v1.snapshots"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229078297Z time="2020-06-03T12:35:33.225716450Z" level=info msg="loading plugin "io.containerd.grpc.v1.tasks"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229081446Z time="2020-06-03T12:35:33.225727678Z" level=info msg="loading plugin "io.containerd.grpc.v1.version"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229084533Z time="2020-06-03T12:35:33.225738133Z" level=info msg="loading plugin "io.containerd.grpc.v1.introspection"..." type=io.containerd.grpc.v1
2020-06-03T12:35:33.229087706Z time="2020-06-03T12:35:33.225983911Z" level=info msg=serving... address="/var/run/docker/containerd/containerd-debug.sock"
2020-06-03T12:35:33.229090873Z time="2020-06-03T12:35:33.226055956Z" level=info msg=serving... address="/var/run/docker/containerd/containerd.sock"
2020-06-03T12:35:33.229094308Z time="2020-06-03T12:35:33.226065898Z" level=info msg="containerd successfully booted in 0.026443s"
2020-06-03T12:35:33.243372181Z time="2020-06-03T12:35:33.240058390Z" level=info msg="Setting the storage driver from the $DOCKER_DRIVER environment variable (overlay2)"
2020-06-03T12:35:33.243390431Z time="2020-06-03T12:35:33.240296002Z" level=info msg="parsed scheme: \"unix\"" module=grpc
2020-06-03T12:35:33.243394742Z time="2020-06-03T12:35:33.240311103Z" level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
2020-06-03T12:35:33.243398341Z time="2020-06-03T12:35:33.240336947Z" level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock 0 <nil>}] <nil>}" module=grpc
2020-06-03T12:35:33.243411874Z time="2020-06-03T12:35:33.240345801Z" level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
2020-06-03T12:35:33.281680505Z time="2020-06-03T12:35:33.260046911Z" level=info msg="parsed scheme: \"unix\"" module=grpc
2020-06-03T12:35:33.281700448Z time="2020-06-03T12:35:33.260069151Z" level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
2020-06-03T12:35:33.281705205Z time="2020-06-03T12:35:33.260086077Z" level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///var/run/docker/containerd/containerd.sock 0 <nil>}] <nil>}" module=grpc
2020-06-03T12:35:33.281709991Z time="2020-06-03T12:35:33.260095568Z" level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
2020-06-03T12:35:33.302342647Z time="2020-06-03T12:35:33.298907986Z" level=info msg="Loading containers: start."
2020-06-03T12:35:33.356170350Z time="2020-06-03T12:35:33.346872010Z" level=warning msg="Running modprobe bridge br_netfilter failed with message: ip: can't find device 'bridge'\nbridge 167936 1 br_netfilter\nstp 16384 1 bridge\nllc 16384 2 bridge,stp\nip: can't find device 'br_netfilter'\nbr_netfilter 24576 0 \nbridge 167936 1 br_netfilter\nmodprobe: can't change directory to '/lib/modules': No such file or directory\n, error: exit status 1"
2020-06-03T12:35:33.459014885Z time="2020-06-03T12:35:33.458902627Z" level=info msg="Default bridge (docker0) is assigned with an IP address 172.18.0.0/16. Daemon option --bip can be used to set a preferred IP address"
2020-06-03T12:35:33.512323955Z time="2020-06-03T12:35:33.511972176Z" level=info msg="Loading containers: done."
2020-06-03T12:35:33.538197317Z time="2020-06-03T12:35:33.537823654Z" level=info msg="Docker daemon" commit=42e35e61f3 graphdriver(s)=overlay2 version=19.03.11
2020-06-03T12:35:33.538256362Z time="2020-06-03T12:35:33.537959192Z" level=info msg="Daemon has completed initialization"
2020-06-03T12:35:33.597277606Z time="2020-06-03T12:35:33.593481285Z" level=info msg="API listen on [::]:2375"
2020-06-03T12:35:33.597295730Z time="2020-06-03T12:35:33.593560537Z" level=info msg="API listen on /var/run/docker.sock"
*********
Pulling docker image docker:latest ...
Using docker image sha256:0bfe00e7bcd536451161fd64b2fe05f4ff6373ce9dd241e9762b68c7f56ce438 for docker:latest ...
Preparing environment
Running on runner-fa6cab46-project-17319365-concurrent-0 via runner-fa6cab46-srm-1591186323-a8bad638...
Getting source from Git repository
$ eval "$CI_PRE_CLONE_SCRIPT"
Fetching changes with git depth set to 50...
Initialized empty Git repository in /builds/foo/bar/api/.git/
Created fresh repository.
From https://gitlab.com/foo/bar/api
* [new ref] refs/pipelines/141504246 -> refs/pipelines/141504246
* [new branch] master -> origin/master
Checking out 823e4b7a as master...
Skipping Git submodules setup
Restoring cache
00:01
Downloading artifacts
Running before_script and script
00:01
$ apk add --no-cache curl jq python py-pip
fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
python (missing):
required by: world[python]
Running after_script
00:01
Uploading artifacts for failed job
00:02
ERROR: Job failed: exit code 1
这个相同的 CI 脚本在一周前处理相同的代码。从日志来看,GitLab runner 可能无法正确下载/安装 python。在 GitLab-CI 中是否有任何替代命令来安装 python 和 pip ?或者我应该等到 GitLab 修复错误?
最佳答案
这不是 GitLab 问题。 docker:stable
删除了 python
包。使用 docker image docker:19.03.8
解决了这个问题。
更新 .gitlab-ci.yml
image: docker:19.03.8
services:
- docker:dind
stages:
- build
variables:
REPOSITORY_URL: 708604513256.dkr.ecr.ap-south-1.amazonaws.com/foo-bar/api:latest
before_script:
- apk add --no-cache curl jq python py-pip
- pip install awscli
build:
stage: build
only:
- master
script:
- $(aws ecr get-login --no-include-email --region ap-south-1)
- docker build -t $REPOSITORY_URL .
- docker push $REPOSITORY_URL
注意:虽然我不确定我们是否可以通过任何其他方式安装 awscli
和 docker:latest
。如果可能的话,我认为这将是一个更好的解决方案。
关于python - Gitlab-CI 无法满足不可满足的约束 python missing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62173505/
我们都知道ci" ci' ci( ci[ ... 做。在日常编辑中非常方便。我发现了一些奇怪的东西,并查看了帮助,没有找出原因。 说,我有一个文件: foo "target" foo 'target'
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 6年前关闭。 Improve this qu
我的本地 gitlab 安装中有许多存储库。我正在从 Jenkins 迁移到 gitlab 以进行 CI,并且毫无问题地切换了我的第一个 repo。当我添加 .gitlab-ci.yml 时,第二个
我在一个github项目中有几个文件夹,每个文件夹都有一个不同的.travis.yml文件。 设置travis-ci的正确方法是什么,以便我可以指定要构建的文件夹/子项目? 我可以添加before_s
Gitlab 文档说明了以下关于 GIT_STRATEGY: none 的内容: none also re-uses the project workspace, but skips all Git
我想用以下条件配置我的 CI: 当我创建合并请求时 而这个目标分支是 develop 我的工作运行。 我没有找到这个特定工作的文档。 谢谢 最佳答案 在 Gitlab CI 文档中几个小时后,我找到了
我有一个带有子目录 ( test ) 的 gem,其中包含用于测试项目的 Rails 3.1.1 应用程序。我正在尝试设置 Travis-CI 以进行持续集成,但是我不知道如何设置我的 .travis
如何指定:语言:.travis.yml 中的无? 我不指定语言,默认使用 Ruby。 我没有 ruby 。我正在使用 C、C++、Ocaml、Python 和 Felix。 构建脚本只是“制作”。 最
我正在使用 gitlab pages部署作业的输出。我有 3 个不同的工作产生 html输出。一项工作总是在运行。其他 2 个作业是可选的,因此它们是手动运行的。 如何将手 Action 业的输出部署
我在 gitlab.com 上有一个使用 CI 功能的私有(private)存储库。一些 CI 作业会创建存储的工件文件。我刚刚通过将其添加到 CI 配置中实现了一天后自动删除工件: expire_i
假设我为一个项目配置了多个作业,如下所示: build_win32: script: ... build_ios: script: ... unit_tests: script: ...
如何创建跨越多个阶段的 CI 作业以提高并行性? 如下图所示: 这个想法是slow_build应该最早开始build ,但是 test不依赖它,所以 test应该可以尽快启动build已经完成了。 (
我有一个 CI 管道,它可能正在做一些半变态的事情。我们不要争论这部分。 作为 CI 的一部分,我将生成一个工件 ( README.md ),我希望将其提交并推回同一存储库。只需使用 git push
我的项目同时使用nodejs和java 我尝试从 node_js 构建开始,然后安装 java(因为这是一个 npm 模块) 但是安装java的脚本失败了,而且我认为当已经存在java构建时就没有必要
我不想为了运行构建而将每一个小的更改都推送到 .travis.yml 以及对源代码所做的每一个小的更改。使用jenkins,您可以下载jenkins并在本地运行。特拉维斯提供这样的东西吗? Note:
主题。 这是否意味着在免费帐户中我的 api 请求数量有限? 响应部分示例: { "@type": "pending", "remaining_requests": 9, "reposit
有什么办法可以按顺序从舞台运行作业吗?我尝试过使用依赖项来做到这一点 job1: stage:deploy ... job2: stage:deploy dependencies:
我正在努力为多个项目设置 gitlab 运行程序,我们希望能够为所有项目设置环境变量。我尝试在 .bashrc 中为 gitlab-runner 和 root 用户设置全局变量,但在 CI 脚本过程中
Travis 有一种针对不同 PHP 版本测试项目的简单方法。 现在我想为插件运行测试。为此,我编写了一个在 .travis.yml 的安装阶段调用的脚本,它检查主项目并将我的插件源移动到正确的目录中
关闭。这个问题是not reproducible or was caused by typos .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 5年前关闭。
我是一名优秀的程序员,十分优秀!