博客
关于我
Jenkins 基础篇 - Server 配置
阅读量:764 次
发布时间:2019-03-23

本文共 1735 字,大约阅读时间需要 5 分钟。

Linux 服务器配置与 Jenkins 部署

在 Jenkins 中部署服务之前,首先需要配置目标服务器。配置目标服务器相对简单,只需将服务器的 IP、账号密码或账号密钥配置在 Jenkins 中。然而,在配置服务器之前,了解 Linux 系统中的用户和用户组管理是必不可少的。特别是要掌握如何创建用户,以及如何将用户添加到组,这将帮助我们更好地管理服务器环境。

Linux 用户与用户组管理

在 Linux 系统中,用户和用户组是管理系统资源的基础。要向一个群组添加用户,我们需要以具有 sudo 访问权限或以 root 用户身份登录。Linux 组是一种组织单位,用于管理用户帐户,主要用于定义对系统资源的访问权限。组的权限可以在组内的用户之间共享。

组的分类

Linux 系统中的组分为两种类型:

  • 主要组:用户创建文件时,文件的组会被设置为用户的主要组。通常,主要组的名称与用户的登录名相同。主要组的信息存储在 /etc/passwd 文件中。
  • 次要组:用于向特定用户授予特定资源访问权限。例如,将用户添加到 docker 组后,该用户将能够运行 docker 命令。
  • 用户与组的关系

    每个用户可以完全属于一个主要组,同时也可以加入零个或多个次要组。这种设计使得用户可以灵活地获得不同的权限。

    常用命令操作

    以下是常用的用户和组管理命令:

  • 将用户附加到某个组

    sudo usermod -a -G groupname username
    • 使用 -a 开关可以确保用户只会从组中删除那些在命令中未列出的组。
    • 如果需要将用户添加到多个组,组名用逗号分隔:
      sudo usermod -a -G groupname1,groupname2 username
  • 将用户从某个组中删除

    sudo gpasswd -d username groupname
  • 创建新的组

    sudo groupadd groupname
  • 删除现有的组

    sudo groupdel groupname
  • 更改用户的主要组

    sudo usermod -g groupname username
  • 创建用户并分配到组

    sudo useradd -g users -G wheel,docker username
  • 设置用户登录密码

    sudo passwd username
  • 查看用户组信息

    id username

    或者:

    groups username
  • 实际操作示例

    在我的实验环境中,我创建了一个 maintainer 运维用户,并将其添加到 docker 组和 wheel 组。同时,我还设置了该用户可以使用密钥登录。

    创建用户并添加到组

    sudo useradd -g users -G wheel,docker maintainer

    设置用户登录密码

    sudo passwd maintainer

    生成 SSH 密钥

    maintainer 用户登录后生成密钥文件:

    ssh-keygen -t rsa -b 2048 -v

    将密钥文件复制到其他服务器

    如果需要在其他服务器使用相同的密钥文件,执行以下命令(前提是目标服务器上已经存在该用户):

    ssh-copy-id -i maintainer.pub maintainer@192.168.31.111

    Jenkins 服务器配置

    在 Jenkins 中完成服务器配置后,进入【系统管理】→ 【系统设置】→ 【SSH Servers】,点击【新增】并填写服务器信息。

    高级设置

    在【高级】设置中勾选【Use password authentication, or use a different key】,并设置登录密码。

    测试配置

    点击【Test Configuration】测试配置是否正常,提示 "Success" 表示配置成功。

    密钥发布

    在【Publish over SSH】处配置统一的密钥文件路径,例如:

    /home/maintainer/.ssh/maintainer

    添加密钥登录服务器

    依次新增支持密钥登录的服务器配置,确保密钥登录方式正常。

    通过以上步骤,我们可以成功配置 Jenkins 服务器并进行部署。

    转载地址:http://wglzk.baihongyu.com/

    你可能感兴趣的文章
    NOIp模拟赛二十九
    查看>>
    Vue3+element plus+sortablejs实现table列表拖拽
    查看>>
    Nokia5233手机和我装的几个symbian V5手机软件
    查看>>
    non linear processor
    查看>>
    Non-final field ‘code‘ in enum StateEnum‘
    查看>>
    none 和 host 网络的适用场景 - 每天5分钟玩转 Docker 容器技术(31)
    查看>>
    None还可以是函数定义可选参数的一个默认值,设置成默认值时实参在调用该函数时可以不输入与None绑定的元素...
    查看>>
    NoNodeAvailableException None of the configured nodes are available异常
    查看>>
    Vue.js 学习总结(16)—— 为什么 :deep、/deep/、>>> 样式能穿透到子组件
    查看>>
    nopcommerce商城系统--文档整理
    查看>>
    NOPI读取Excel
    查看>>
    NoSQL&MongoDB
    查看>>
    NoSQL介绍
    查看>>
    NoSQL数据库概述
    查看>>
    Notadd —— 基于 nest.js 的微服务开发框架
    查看>>
    NOTE:rfc5766-turn-server
    查看>>
    Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad++正则表达式替换字符串详解
    查看>>