前置条件

jdk1.8

docker 23.0.5
git 1.8.3.1
maven 3.6.3

jenkins 2.346.1

         对于Jenkins的版本,一开始使用的是Jenkins 2.204.6,后面发现安装不了很多插件,比如汉化的插件Localization: Chinese (Simplified),提示的信息是:版本需要升级。因此采用了2.346.1这个版本,比较稳定。

安装Jenkins

1.创建Jenkins home
        Jenkins home目录用以docker挂载,宿主机采用/var/jenkins_home。

cd /var
sudo mkdir jenkins_home
sudo chown -R 1000:1000 jenkins_home

2.查看用户组

        需要把Jenkins用户的添加到docker的用户组里面去,这样子在Jenkins容器才有使用宿主机docker的权限。

cat /etc/group | grep docker

这里假设用户组是998。

3.docker拉去Jenkins镜像包

docker pull jenkins/jenkins:2.346.1

4.运行Jenkins

docker run -d  --restart=always -m2G -u root -p 8088:8080 -p 50000:50000   \
-v /var/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime:ro \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /etc/docker:/etc/docker \
-v /usr/bin/docker:/usr/bin/docker \
--group-add=998 \
--name jenkins  \
jenkins/jenkins:2.346.1

http://ip:8088/  进入jenkins管理界面

Jenkins部署docker项目

1.先杀掉进程,删除旧的镜像

#!/bin/bash
result=$(docker ps| grep "xxx-service") 
if [[ "$result" != "" ]]
then
echo "================docker stop xxx-service================"
docker stop xxx-service
fi
result1=$(docker ps -a | grep "xxx-service") 
if [[ "$result1" != "" ]]
then
echo "================docker rm xxx-service================"
docker rm xxx-service
fi
result2=$(docker images | grep "xxx-service")
if [[ "$result2" != "" ]]
then
echo "================docker rmi xxx-service:latest================"
docker rmi xxx-service:latest
fi

2.打包镜像,启动容器

#!/bin/bash

docker build -t xxx-service:v1.0 .
docker run -d --restart=always  -p 8080:8080 -v /data/logs:/logs  --name xxx-service xxx-service:v1.0
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐