从 GitLab CI 发布 Docker 镜像到 Docker Hub

阅读时长 4 分钟读完

在现代的软件开发中,Docker 已经成为了一个非常重要的工具,它可以帮助我们轻松地构建、部署和运行应用程序。而 Docker Hub 则是一个广受欢迎的 Docker 镜像仓库,可以让我们方便地分享和获取镜像。本文将介绍如何使用 GitLab CI 自动化发布 Docker 镜像到 Docker Hub。

准备工作

在开始之前,请确保您已经安装了 Docker 和 GitLab CI,并且已经创建了一个 Docker Hub 账户并登录。

接下来,我们需要在 GitLab 中配置一个 Runner,以便可以在 CI/CD 管道中运行构建和发布 Docker 镜像的任务。请按照官方文档安装 Runner,并将其注册到您的 GitLab 实例中。

编写 GitLab CI 文件

GitLab CI/CD 允许我们在代码提交时自动构建和发布 Docker 镜像。我们可以通过编写一个 .gitlab-ci.yml 文件来定义这些任务。下面是一个示例文件:

-- -------------------- ---- -------
------ -------------

---------
  - -----------

-------
  - -----
  - -------

----------
  ------------------ ---------------
  -------------------- -----------------------
  --------------------- --------------------
  ------------------------- --------------------

--------------
  - ------ ----- -- --------------------- -- ------------------------- --------------------

------
  ------ -----
  -------
    - ------ ----- -- ---------------------------------------------------------------------------------- -
    - ------ --- ---------------------------------------------------------------------------------- --------------------------------------------------------------------

--------
  ------ -------
  -------
    - ------ ---- ----------------------------------------------------------------------------------
    - ------ ---- --------------------------------------------------------------------

在这个文件中,我们定义了两个任务:buildpublish。首先,我们使用 docker:latest 镜像作为 Runner 的基础镜像,并且启动了一个 Docker 容器服务。然后,我们定义了一些变量,包括镜像的名称、Docker Hub 的地址以及我们的 Docker Hub 账户信息。在 before_script 部分,我们使用 docker login 命令登录到 Docker Hub。

build 阶段,我们使用 docker build 命令构建 Docker 镜像,并用 docker tag 命令标记版本。在 publish 阶段,我们使用 docker push 命令将镜像推送到 Docker Hub 中。

配置 GitLab CI 变量

我们需要在 GitLab CI 中配置一些敏感信息作为环境变量,以便可以在 .gitlab-ci.yml 文件中使用。请按照以下步骤进行操作:

  1. 进入您的项目页面。
  2. 点击左侧栏中的“Settings”按钮,在弹出菜单中选择“CI/CD”。
  3. 在“Variables”部分,点击“Add variable”按钮,并添加以下变量:
    • DOCKER_HUB_USERNAME:您的 Docker Hub 用户名。
    • DOCKER_HUB_PASSWORD:您的 Docker Hub 密码。

发布 Docker 镜像

现在,当您提交代码时,GitLab CI 将自动构建和发布 Docker 镜像到 Docker Hub 中。只需将 .gitlab-ci.yml 文件提交到您的 GitLab 仓库即可开始。

总结

本文介绍了如何使用 GitLab CI 自动化发布 Docker 镜像到 Docker Hub,并提供了一个示例 .gitlab-ci.yml 文件。通过这种

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/606f21872d2a29a3c120357e

纠错
反馈