Linux安装Jenkins&配置Android构建环境

MannaYang / 86 / 2023-09-25 10:54:27

ChatGPT 可用网址,仅供交流学习使用,如对您有所帮助,请收藏并推荐给需要的朋友。
https://ckai.xyz

在移动端DevOps流构建环节中,我们通常会采用服务器Jenkins进行Android/iOS打包测试、灰度、上线生产等集成操作,以下是Mac终端连接远程Linux安装Jenkins并配置Android构建环境关键步骤记录,可以在实践中作为参考

1.连接远程Linux服务器

通过Mac终端运行下面命令<ssh root@ip地址>
ssh root@00.000.00.00 

会提示 :The authenticity of host '00.000.00.00 (00.000.00.00)' can't be established.
ECDSA key fingerprint is SHA256:CjvSLfRn/IeKE6O0+y/6XERGt1m6AHiHRgX76U/W+3E.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

表示意思:无法确认host主机的真实性,只知道它的公钥指纹,问你还想继续连接吗?
所谓"公钥指纹",是指公钥长度较长(这里采用RSA算法,长达1024位),很难比对,所以对其进行MD5计算,将它变成一个128位的指纹。上例中是98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d,再进行比较,就容易多了。
很自然的一个问题就是,用户怎么知道远程主机的公钥指纹应该是多少?回答是没有好办法,远程主机必须在自己的网站上贴出公钥指纹,以便用户自行核对。
假定经过风险衡量以后,用户决定接受这个远程主机的公钥

输入 yes ,会提示 : Warning: Permanently added 'host,12.18.429.21' (RSA) to the list of known hosts ,表示host主机已经得到认可,此时输入密码xxxxxxx

如果密码正确,就可以登录了。当远程主机的公钥被接受以后,它就会被保存在文件$HOME/.ssh/known_hosts之中。下次再连接这台主机,系统就会认出它的公钥已经保存在本地了,从而跳过警告部分,直接提示输入密码。
每个SSH用户都有自己的known_hosts文件,此外系统也有一个这样的文件,通常是/etc/ssh/ssh_known_hosts,保存一些对所有用户都可信赖的远程主机的公钥

2.更新CentOS 7 系统

通过Mac终端运行下面命令
sudo yum install epel-release
sudo yum update
sudo reboot

3.安装OpenJDK

通过Mac终端运行下面命令
sudo yum install java-1.8.0-openjdk.x86_64
java -version
sudo vim ~/.bash_profile
JAVA_HOME=/usr/local/java-1.8.0-openjdk.x86_64
PATH=$JAVA_HOME/tools:$PATH
export JAVA_HOME
export PATH
source ~/.bash_profile

4.安装wget命令

通过Mac终端运行下面命令
sudo yum -y install wget

5.通过Linux服务器查看文件路径

通过Mac终端运行下面命令
whereis java
which java
echo $JAVA_HOME
echo $PATH

6.安装Android sdk

下载地址 http://tools.android-studio.org/index.php/sdk/

通过Mac终端运行下面命令

wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz

tar -zvxf android-sdk_r24.4.1-linux.tgz

mv android-sdk-linux /usr/local/

7.通过sdkmanager 命令安装Android工具包

  1. ./sdkmanager packages 其中packages代表需要安装的工具包的path , 查看path 可通过 ./sdkmanager --list 命令,
    packages参数 必需要使用引号引起来,可同时添加多个packages参数同时安装多个包(多个包之间用空格隔开,并各自使用引号引起来)
  2. 安装平台工具包(adb 和 fastboot 命令的包)
    ./sdkmanager "platform-tools"
  3. 同时安装多个包
    ./sdkmanager "platform-tools" "build-tools;28.0.3" "platforms;android-28"
  4. 更新已安装的包
    ./sdkmanager --update
  5. 卸载已安装的包
    ./sdkmanager --uninstall "安装包path"

    卸载单个 ./sdkmanager --uninstall "build-tools;28.0.0"

    卸载多个 ./sdkmanager --uninstall "build-tools;28.0.0" "platforms;android-26"

8.配置ANDROID_HOME环境变量

通过Mac终端运行下面命令
sudo vim ~/.bash_profile
ANDROID_HOME=/usr/local/android-sdk-linux
PATH=$ANDROID_HOME/tools:$PATH
export ANDROID_HOME
export PATH
source ~/.bash_profile

9.更新Android各个版本的sdk

通过Mac终端运行下面命令
android list sdk --all
按序列号update
android update sdk -u --all --filter 1,2,19,20,21,22,23,24,25,27,29,35,36,46,47,48,49,50,51,52,53,54,55,56,57,202

10.安装Jenkins

通过Mac终端运行下面命令
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins

11.启动Jenkins

通过Mac终端运行下面命令
systemctl start jenkins.service
执行systemctl status jenkins.service查看服务状态,如果出现启动失败,失败错误信息为Starting Jenkins bash: /usr/bin/java: No such file or directory是java环境配置的问题,找到你的jdk目录,创建软链接即可:
ln -s /usr/lib/jdk1.8.0_251/bin/java /usr/bin/java

12.打开Jenkins

浏览器输入地址 http:<ip或者域名>:8080
http://00.000.00.00:8080/login?from=%2F

13.查看解锁密码

通过Mac终端运行下面命令
sudo vim /var/lib/jenkins/secrets/initialAdminPassword

14.卸载Jenkins

  1. 卸载yum方式安装的jenkins(默认安装主目录是在/var/lib/jenkins/)

    service jenkins stop
    yum clean all --可以不执行
    yum -y remove jenkins
  2. 卸载rpm方式安装的jenkins

    rpm -e jenkins
    rpm -ql jenkins
    find / -iname jenkins | xargs -n 1000 rm -rf

15.上传文件到服务器

  1. 上传文件格式:scp - 本地文件路径 - 远程服务器用户名@域名/ip - 冒号/需要保存的路径/需要保存的文件名

    scp /Users/xxxx/Downloads/login.keychain root@00.000.00.00:/var/lib/jenkins/kpp_upload/login.keychain
  2. 上传文件夹格式:scp -r【本地文件的路径】【服务器用户名】@【服务器地址】:【服务器上存放文件的路径】

    scp /Users/xxxx/Downloads/test root@00.000.00.00:/var/lib/jenkins/kpp_upload/

16.安装Gradle

通过Mac终端运行下面命令
wget https://services.gradle.org/distributions/gradle-6.7.1-bin.zip

17.解压安装包

通过Mac终端运行下面命令
yum install -y unzip zip
unzp gradle-4.4.1-all.zip

18.登录Jenkins

进入Jenkins管理页面,选择系统管理

  1. 选择全局配置

    配置全局属性键值对 : ANDROID_HOME
    配置钉钉通知webhook
  2. 选择插件管理

    安装git、gitlab、钉钉等必要插件
  3. 选择全局配置工具

    配置JDK目录
    配置Git目录
    配置Gradle目录
    配置Maven目录
  4. 选择节点管理

    配置服务器节点,例如Linux连接远程Mac终端节点
  5. 新建构建任务

    开启Jenkins构建项目之旅

19.其他Linux操作命令

  1. 强制退出(注意带:)
    :q!+enter
  2. 强制保存
    :w!+enter
  3. 退出并保存
    :wq+enter

Linux安装Jenkins&amp;配置Android构建环境
作者
MannaYang
许可协议
CC BY 4.0
发布于
2023-09-25
修改于
2024-05-27
Bonnie image
尚未登录