安装 jdk
``` shell
$ tar -zxvf jdk -C /usr/local
```
安装 maven
``` shell
$ tar -zxvf maven -C /usr/local
```
- 配置阿里云maven镜像
找到: /usr/local/maven/conf/setting.xml
```
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
```
- maven项目配置使用jdk1.8进行编译的插件
```
<profile>
<id>jdk18</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
```
安装 jenkins
-
拉取Jenkins镜像
docker pull jenkins/jenkins -
编写docker-compose.yml
version: "3.1" services: jenkins: image: jenkins/jenkins container_name: jenkins ports: - 8080:8080 - 50000:50000 volumes: - ./data/:/var/jenkins_home/ -
启动容器
docker-compose up -d -
error
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission deniedchmod -R 777 data
设置SSH service
CI
- 新建任务
- 源码管理
- Build Steps
- 构建后操作
- Dockerfile
FROM adoptopenjdk/openjdk8 COPY demo.jar /usr/local WORKDIR /usr/local CMD java -jar demo.jar- docker-compose.yml
version: '3.1' services: demo: build: ./ image: demo:v1.1.0 container_name: demo ports: - 8081:8081 - 源码管理
CD
-
安装 git插件
-
配置Git参数
-
在执行build 前添加执行 shell命令
-
error
stderr: fatal: unable to access 'https://gitee.com/wuyc12138/demo.git/': Could not resolve host: gitee.com解决
docker exec -it jenkins bin/bash git config --global http.sslVerify false -
Jenkins[docker]使用宿主机的docker
sudo chown root:root /var/run/docker.sock sudo chmod o+rw /var/run/docker.sock-
添加数据卷
version: "3.1" services: jenkins: image: jenkins/jenkins container_name: jenkins ports: - 8080:8080 - 50000:50000 volumes: - ./data/:/var/jenkins_home/ - /usr/bin/docker:/usr/bin/docker - /var/run/docker.sock:/var/run/docker.sock - /etc/docker/daemon.json:/etc/docker/daemon.json
-