【问题标题】:How to install only ssh in a gitlab CI build?如何在 gitlab CI 构建中仅安装 ssh?
【发布时间】:2021-02-10 20:02:51
【问题描述】:

我想创建一个gitlab-ci 部署阶段,它应该通过ssh 上传文件。 我的 ubuntu 镜像不包含 ssh,所以我必须安装它。

image: adoptopenjdk/maven-openjdk11
...

deploy:
  stage: deploy
  script:
    - which ssh || (apt-get update -y && apt-get install -y ssh)
    ...

问题:因此我必须执行一个完整的apt-get install,它将拉取图像的所有最新更新。

结果:

Reading state information...
The following additional packages will be installed:
  dbus dmsetup file gir1.2-glib-2.0 libapparmor1 libargon2-0 libbsd0 libcap2
  libcryptsetup12 libdbus-1-3 libdevmapper1.02.1 libedit2
  [...]

The following NEW packages will be installed:
  dbus dmsetup file gir1.2-glib-2.0 libapparmor1 libargon2-0 libbsd0 libcap2
  libcryptsetup12 libdbus-1-3 libdevmapper1.02.1 libedit2
  [...]

这对于安装 ssh 客户端来说是没有必要的。 问题:有没有办法只安装ssh 客户端而不进行任何操作系统更新?

【问题讨论】:

    标签: ubuntu ssh gitlab gitlab-ci


    【解决方案1】:

    据我所知,apt-get update 将软件包列表更新为最新的,apt-get install ssh 仅安装 ssh 并且不更新“操作系统”(我猜你'正在使用基于 Docker 的运行器)。

    您看到的额外包是 ssh 所需的依赖项。或者,请查看gitlab ci docs

    【讨论】:

    • 好的,我不知道这些包都属于 ssh。
    猜你喜欢
    • 2019-09-28
    • 2017-05-15
    • 1970-01-01
    • 2021-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    相关资源
    最近更新 更多