博客
关于我
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/

    你可能感兴趣的文章
    NO32 网络层次及OSI7层模型--TCP三次握手四次断开--子网划分
    查看>>
    NOAA(美国海洋和大气管理局)气象数据获取与POI点数据获取
    查看>>
    NoClassDefFoundError: org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata
    查看>>
    node exporter完整版
    查看>>
    Node JS: < 一> 初识Node JS
    查看>>
    Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(72)
    查看>>
    Node 裁切图片的方法
    查看>>
    Node+Express连接mysql实现增删改查
    查看>>
    node, nvm, npm,pnpm,以前简单的前端环境为什么越来越复杂
    查看>>
    Node-RED中Button按钮组件和TextInput文字输入组件的使用
    查看>>
    Node-RED中Switch开关和Dropdown选择组件的使用
    查看>>
    Node-RED中使用html节点爬取HTML网页资料之爬取Node-RED的最新版本
    查看>>
    Node-RED中使用JSON数据建立web网站
    查看>>
    Node-RED中使用json节点解析JSON数据
    查看>>
    Node-RED中使用node-random节点来实现随机数在折线图中显示
    查看>>
    Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
    查看>>
    Node-RED中使用node-red-contrib-image-output节点实现图片预览
    查看>>
    Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
    查看>>
    Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
    查看>>
    Node-RED中使用range范围节点实现从一个范围对应至另一个范围
    查看>>