安装Centos7
安装Docker
清理原有docker程序(如果之前没安装过直接进行下一步)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
安装依赖软件(yum-utils提供yum-config-manager包,用来管理yum配置文件;lv2和device-mapper-persistent-data为dockerdevicemapper存储设备的必须依赖)
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
添加docker-ce安装源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装docker-ce
yum install -y docker-ce
配置开机启动
systemctl enable docker
修改配置文件:(docker的配置文件为/etc/docker/daemon.json,默认没有daemon.json,需要手动创建)
data-root
:docker数据存放目录,可以df -h
看看那个分区的存储大就指定到那个分区
registry-mirrors
: docker国内镜像加速地址
{
"data-root": "/home/docker",
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
重新加载配置文件
systemctl daemon-reload
启动docker
systemctl start docker
安装构建环境
安装maven
下载
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
解压
tar -xf apache-maven-3.5.4-bin.tar.gz -C /usr/local/
重命名
mv /usr/local/apache-maven-3.5.4/ /usr/local/maven
添加环境变量 vi /etc/profile
export PATH=$PATH:/usr/local/maven/bin
刷新环境变量
source /etc/profile
验证安装
[root@localhost data]# mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /usr/local/maven
Java version: 1.8.0_292, vendor: Red Hat, Inc., runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"
安装NodeJS
下载
wget https://npm.taobao.org/mirrors/node/latest-v12.x/node-v12.22.1-linux-x64.tar.gz
解压
tar xvzf node-v12.22.1-linux-x64.tar.gz -C /usr/local/
重命名
mv /usr/local/node-v12.22.1-linux-x64/ /usr/local/nodejs/
添加环境变量 vi /etc/profile
export PATH=/usr/local/nodejs/bin:$PATH
刷新环境变量
source /etc/profile
验证安装
[root@jfsoft home]# node -v
v12.22.1
[root@jfsoft home]# npm -v
6.14.12
[root@jfsoft home]# npx -v
6.14.12
安装Jenkins
下载镜像
docker pull jenkins/jenkins
创建本地数据卷
mkdir -p /home/jenkins
授权本地数据卷,/home/jenkins
目录的拥有者为root
用户,而容器中jenkins
用户的 uid 为 `1000
chown -R 1000:1000 /home/jenkins
运行容器
docker run \
-d \
--name jenkins \
--restart always \
-p 80:8080 \
-p 50000:50000 \
-v /usr/local/maven:/usr/local/maven \
-v /usr/local/nodejs:/usr/local/nodejs \
-v /home/jenkins:/var/jenkins_home \
jenkins/jenkins
-d
标识是让容器在后台运行
--name
定义一个容器的名字,如果没有指定,那么会自动生成一个随机数字符串当做UUID
--restart
no,默认策略,在容器退出时不重启容器; on-failure,在容器非正常退出时(退出状态非0),才会重启容器; on-failure:3,在容器非正常退出时重启容器,最多重启3次; always,在容器退出时总是重启容器; unless-stopped,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
-p 80:8080
端口映射
-p 50000:50000
端口映射
-v /home/jenkins:/var/jenkins_home
绑定一个数据卷,/home/jenkins
是刚才创建的本地数据卷
配置Jenkins
开放Jenkins端口
firewall-cmd --add-port=80/tcp --permanent
浏览器打开http://ip
获取密码,因为我们是docker安装,所以需要进入对应容器获取密码
docker exec -it jenkins /bin/bash
查看密码
cat /var/jenkins_home/secrets/initialAdminPassword
复制内容,点击确定,然后输入exit
退出容器,回到浏览器点击安装推荐的插件
安装完后点击继续,创建管理员账号(账号:root 密码:jfyt201221)
配置完成