Concourse CI 一键上手指南

xiao

发布于239天前
活着就要折腾!
https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.xiao.concourse

欢迎使用 Concourse CI! 无论你是自动化新手还是 DevOps 老手,跟着这份指南,你将在几分钟内体验现代 CI/CD 的高效与乐趣。让我们一步步打造一条属于你的流水线,开启自动化新旅程吧!


一、应用安装

进入 Lazycat 应用商店,搜索 “Concourse CI”,点击一键部署

image.png

稍等片刻,应用自动完成部署,访问分配给你的专属地址(例如 https://xxxx.lazycat.run)。

默认登录账号:

  • 用户名:admin
  • 密 码:admin

二、下载安装 Fly CLI 工具

打开 Concourse Web UI。首页下载 Fly cli,选择适合你操作系统的文件。

image.png

下载后,将文件添加到你电脑的 PATH 路径,并赋予执行权限(Linux/macOS 可在终端输入 chmod +x fly)。

💡 小贴士: Fly CLI 工具让你在本地配置、操作 Concourse,非常强大!


三、快速创建你的第一条流水线

  1. 编写 pipeline.yml:

    在你喜欢的目录,新建 pipeline.yml 文件,复制以下内容(可用任何文本编辑器编辑):

    jobs:
    - name: hello-world
      plan:
      - task: say-hello
        config:
          platform: linux
          image_resource:
            type: registry-image
            source:
              repository: ghcr.io/hlesey/busybox
          run:
            path: sh
            args:
            - -c
            - |
              echo "Hello, Concourse!"
              echo "Hello, LazyCAT!"
    
  2. Fly CLI 登录 Concourse:

    打开命令行/终端,执行以下命令(域名换成你的实际 Web UI 域名):

    fly -t tutorial login -c https://你的应用地址 -u admin -p admin
    
    # 命令输出
    # logging in to team 'main'
    # target saved
    
  3. 上传流水线配置:

    fly -t tutorial set-pipeline -p my-first-pipeline -c pipeline.yml -n
    

    命令输出

    jobs:
       job hello has been added:
     + name: hello
     + plan:
     + - config:
     +     image_resource:
     +       name: ""
     +       source:
     +         repository: ghcr.io/hlesey/busybox
     +       type: registry-image
     +     platform: linux
     +     run:
     +       args:
     +       - -c
     +       - |
     +         echo -e "\n\nHello, Concourse!\n\nHello, LazyCAT!\n\n"
     +       path: sh
     +   task: test
    
     pipeline name: my-first-pipeline
    
     pipeline created!
     you can view your pipeline here: https://concourse.minicat.heiyu.space/teams/main/pipelines/my-first-pipeline
    
     the pipeline is currently paused. to unpause, either:
       - run the unpause-pipeline command:
         fly -t tutorial unpause-pipeline -p my-first-pipeline
       - click play next to the pipeline in the web ui
    

    💡 小贴士: 如果修改流水线定义再次上传时,会贴心展示出 diff(修改的内容),以便于确认改动符合预期。

  4. 启用流水线:

    默认情况下新创建的流水线是暂停状态,所以需要先启用。

    fly -t tutorial unpause-pipeline -p my-first-pipeline
    
  5. 运行你的第一个任务:

    执行以下命令,让你的流水线跑起来吧。

    💡 小贴士: 流水线中使用的默认镜像是 ghcr.io/hlesey/busybox, 网络不好的小伙伴会遇到下载镜像慢的问题,可以耐心等候,或者更换为一个镜像。

    fly -t tutorial trigger-job -j my-first-pipeline/hello --watch
    

    你会看到命令输出 Hello, Concourse!Hello, LazyCAT!,流水线成功啦!

    你可以可以访问 web ui,查看流水线执行情况,以及历史的执行记录。

    image.png


Concourse 基本原理简述

Concourse 是一个专注于自动化、简洁和可维护性的现代 CI/CD 系统,其运作原理非常独特,易于理解:

  • 流水线即代码:所有自动化流程都通过 YAML 文件“声明式”写明,像写配置一样定义持续集成构建和交付过程,每一步都版本可控。
  • 容器化任务:Concourse 的每个任务和操作都在完全隔离的容器中运行,默认采用 containerd 作为运行时。这保证了每次执行环境一致、易于复现,无需担心“在我电脑上能跑”的问题。
  • 资源即接口:不同来源(如 Git、S3、镜像仓库等)的输入输出,都通过 “资源(Resource)”统一描述,让集成变得标准化。
  • 无状态 Worker:Worker 节点只负责拉取任务和运行容器,不保存流水线状态,调度灵活,宕机可自动恢复。
  • 可视化与高并发:配合强大的 Web UI 与并行调度能力,用户可直观监控多个任务、流水线无缝协作。

理解以上原理后,你会发现 Concourse 更安全、灵活,升级和迁移都非常容易!


常见文档与资料链接


Concourse CI - 懒猫平台首选现代化 CI/CD 工具

评论

0

暂无评论

说点什么呢~
收藏
1
0
0