GitLab Runner安装和部署

介绍 GitLab Runner 是一个用于在 GitLab CI/CD(持续集成/持续交付)流水线中运行作业(Jobs)的开源工具。它充当了 GitLab CI/CD 系统中的代理,负责接收作业请求、执行作业脚本并报告结果。 下面是 GitLab Runner 的一些关键特点和功能: 多平台支持:GitLab Runner 可在多种操作系统上运行,包括 Linux、macOS 和 Windows,使其适用于各种开发环境和需求。 作业执行器:Runner 接收来自 GitLab CI/CD 的作业请求,并在指定的环境中执行作业。它可以运行各种类型的作业,如构建、测试、部署等。 并发执行:GitLab Runner 可以同时运行多个作业,以提高整体流水线的处理能力和效率。 弹性扩展:你可以配置多个 GitLab Runner 实例,以满足不同项目和流水线的需求。每个 Runner 实例都可以在不同的环境中运行,比如在不同的物理或虚拟机器上,或者在云服务提供商的容器中。 配置灵活性:Runner 的配置相对灵活,你可以根据项目、分支或标签等条件来指定不同的执行规则。这使得你可以针对不同的场景和需求进行定制化配置。 日志和报告:Runner 会生成详细的日志和报告,用于记录作业的执行过程和结果。这些信息对于故障排除、问题追踪和流水线性能分析非常有帮助。 安全和身份验证:GitLab Runner 可与 GitLab CI/CD 系统集成,并通过访问令牌或其他身份验证机制来确保安全的通信和访问权限控制。 安装 GitLab Runner 的版本需要和 GitLab 保持一致。 ...

2024-07-19 · 6 min · 2865 words · chensoul

Gitlab安装和部署-使用yum源

Gitlab Server 部署 1、环境配置 关闭防火墙、SELinux 开启邮件服务 1 2 $ systemctl start postfix $ systemctl enable postfix 2、手动安装 1、安装 gitlab 依赖包 centos7: 1 $ yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python gitlab-ce 10.x.x以后的版本需要依赖policycoreutils-python centos8: 1 $ yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python-utils 2、添加官方源 1 $ curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash 因为官方源太慢,可以使用国内清华yum源,配置如下 ...

2024-07-15 · 6 min · 2901 words · chensoul

Git介绍

Git、Github、Gitlab 的区别 Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。 Github是在线的基于Git的代码托管服务。 GitHub是2008年由Ruby on Rails编写而成。GitHub同时提供付费账户和免费账户。这两种账户都可以创建公开的代码仓库,只有付费账户可以创建私有的代码仓库。 Gitlab解决了这个问题, 可以在上面创建免费的私人repo。 ...

2024-07-15 · 4 min · 1659 words · chensoul

Git使用

部署Git 服务 创建git仓库 git-server上的操作: 1 2 3 4 5 6 7 8 [root@localhost ~]# yum install git git-core gitweb -y [root@localhost ~]# useradd git [root@localhost ~]# passwd git [root@localhost ~]# mkdir /git-root/ [root@localhost ~]# cd /git-root/ [root@localhost git-root]# git init --bare shell.git Initialized empty Git repository in /git-root/shell.git/ [root@localhost git-root]# chown -R git:git shell.git 注意: git init 和 git init –bare 的区别: 使用–bare选项时,不再生成 .git 目录,而是只生成 .git 目录下面的版本历史记录文件,这些版本历史记录文件也不再存放在 .git 目录下面,而是直接存放在版本库的根目录下面。 用"git init"初始化的版本库用户也可以在该目录下执行所有 git 方面的操作。但别的用户在将更新 push 上来的时候容易出现冲突。 使用”git init –bare”方法创建一个所谓的裸仓库,之所以叫裸仓库是因为这个仓库只保存git历史提交的版本信息,而不允许用户在上面进行各种git操作,如果你硬要操作的话,只会得到下面的错误(”This operation must be run in a work tree”)这个就是最好把远端仓库初始化成bare仓库的原因 git仓库测试 ...

2024-07-15 · 10 min · 4742 words · chensoul

Minikube快速入门

安装 macos 系统使用 brew 安装 1 brew install minikube 启动集群 查看当前集群列表 1 2 3 4 5 6 $ minikube profile list |----------|-----------|---------|--------------|------|---------|---------|-------|----------------|--------------------| | Profile | VM Driver | Runtime | IP | Port | Version | Status | Nodes | Active Profile | Active Kubecontext | |----------|-----------|---------|--------------|------|---------|---------|-------|----------------|--------------------| | minikube | docker | docker | 192.168.49.2 | 8443 | v1.30.0 | Unknown | 1 | * | * | |----------|-----------|---------|--------------|------|---------|---------|-------|----------------|--------------------| 创建一个集群 1 2 # 启动一个名称为 minikube 集群,命名空间为 default minikube start 默认情况下,minikube start 创建一个名为“minikube”的集群。如果您想创建不同的集群或更改其名称,可以使用--profile(或-p) 标志: ...

2024-07-10 · 4 min · 1776 words · chensoul

Docker安装和配置

Centos7安装Docker 配置宿主机网卡转发 1 2 3 4 5 6 7 8 9 10 11 ## 配置网卡转发,看值是否为1 $ sysctl -a |grep -w net.ipv4.ip_forward net.ipv4.ip_forward = 1 ## 若未配置,需要执行如下 $ cat <<EOF > /etc/sysctl.d/docker.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward=1 EOF $ sysctl -p /etc/sysctl.d/docker.conf Yum安装配置docker 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ## 下载阿里源repo文件 $ sudo yum install -y yum-utils $ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/repo/Centos-7.repo $ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo $ sudo yum clean all && yum makecache ## yum安装 $ sudo yum install -y docker-ce docker-ce-cli ## 设置开机自启 systemctl enable docker systemctl daemon-reload ## 启动docker systemctl start docker ## 查看docker信息 docker info docker version ## docker-client which docker ## docker daemon ps aux |grep docker 安装 Compose plugin: ...

2024-07-09 · 2 min · 808 words · chensoul

使用 Docker 容器化并运行 Spring Boot 应用程序

本文翻译自 Docker 官方网站的《Java language-specific guide》文章,并做了一些改动。 Java 入门指南教您如何使用 Docker 创建容器化的 Spring Boot 应用程序。在本模块中,您将学习如何: 使用 Maven 容器化并运行 Spring Boot 应用程序 设置本地开发环境以将数据库连接到容器,配置调试器,并使用 Compose Watch 进行实时重新加载 在容器内运行单元测试 使用 GitHub Actions 为应用程序配置 CI/CD 管道 将容器化应用程序本地部署到 Kubernetes 以测试和调试您的部署 完成 Java 入门模块后,您应该能够根据本指南中提供的示例和说明来容器化您自己的 Java 应用程序。 ...

2024-07-09 · 13 min · 6263 words · chensoul

[译]Minikube 中的 Minions - 面向 Java 开发人员的 Kubernetes 简介

我们希望我们的微服务是可复制、可替换的工作程序,我们可以轻松升级或降级,无需停机,管理也只需最少。我们可能会说我们希望他们是我们的奴才。在本文中,我们将通过一个简单的示例来了解 Kubernetes 通过创建和编排奴才大军可以为我们做些什么。您可以按照本文进行编码,也可以从此处克隆项目。 ...

2024-07-08 · 6 min · 2639 words · chensoul

[译]面向 Java 开发人员的 Kubernetes

有一类新工具可用于将应用程序 docker 化并部署到 Kubernetes,这些工具专门面向开发人员。该类别中的最新工具是 RedHat 的 JKube。 微服务是一种架构风格,由一个小型的、单独的应用程序组件组成,该组件具有单一职责,在部署和可扩展性方面具有高度的自主性。这些组件通过轻量级协议(如 REST over HTTP)进行通信。因此,开发团队规模很小(两个披萨规则),专注于微服务。实际上,团队拥有从开发到部署的整个生命周期——如果你构建了它,你就会运行它。这就产生了一个问题。毕竟,开发团队的核心竞争力通常是 Maven、微服务框架(例如 Spring Boot)、测试框架(如 JUnit)等。但是,如果我们看一下部署微服务所涉及的步骤: ...

2024-07-08 · 4 min · 1918 words · chensoul

ActiveMQ安装和使用

ActiveMQ 是一个实现了 JMS 协议的开源消息中间件,目前它有两种版本:ActiveMQ “Classic” 和 ActiveMQ Artemis。 Artemis 版本作为Classic版本的替代品而诞生,相较的提升点有: 高性能与低延迟:Artemis通过改进的设计实现了更高的吞吐量和更低的消息处理延迟。 ...

2024-07-05 · 9 min · 4290 words · chensoul