mirror of
				https://github.com/InsanusMokrassar/JenkinsDocker.git
				synced 2025-11-04 05:20:34 +00:00 
			
		
		
		
	Compare commits
	
		
			94 Commits
		
	
	
		
			06db7ae454
			...
			master
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| b6c01c7b0e | |||
| 3f9791ce07 | |||
| a656ca90ab | |||
| ec53741664 | |||
| 3798534998 | |||
| 6733e53fe5 | |||
| 79a414b72a | |||
| 3d52717f48 | |||
| a8271d0a7a | |||
| 99f832a1ad | |||
| 7b08d9a334 | |||
| 244231987e | |||
| cfb94416cb | |||
| 10db2680f0 | |||
| 5d107925d1 | |||
| 87de6d23b5 | |||
| 45f2ca7cd5 | |||
| 979096f2c5 | |||
| 6a631025df | |||
| dd35b735c6 | |||
| 1e1b4c69dc | |||
| c6ea80d86c | |||
| 26ec3ec493 | |||
| 70e4add59e | |||
| 1b59ce46c1 | |||
| ee11983ac7 | |||
| 5115385043 | |||
| 17dc84875c | |||
| cda1afa50e | |||
| a3d42e0a07 | |||
| 4a7ce903fe | |||
| b08e771611 | |||
| 5e9aee88bc | |||
| 2e171b6497 | |||
| 6b15058889 | |||
| 1904c931d6 | |||
| b195a41bc7 | |||
| a83409c347 | |||
| 077d70a269 | |||
| 31b7b8b87f | |||
| e1be082270 | |||
| 2737e72ee3 | |||
| 061a25b758 | |||
| 1b104cc23e | |||
| d769e3c263 | |||
| f36652fa9b | |||
| fa9c544445 | |||
| dd561e2647 | |||
| 80ce34e009 | |||
| 67e6bfe8fd | |||
| a5aa44c5c3 | |||
| 4f30140035 | |||
| 59be34f51d | |||
| a2247ab4d8 | |||
| 0b01640e40 | |||
| bbdfe8e3d6 | |||
| 02ce14fa0d | |||
| 7e6dc35f63 | |||
| bcb2ffd214 | |||
| dc92a08976 | |||
| 8d3a286772 | |||
| 4bd27c9479 | |||
| 66fb9fffb1 | |||
| 8c33e337e5 | |||
| beaf7f8dc5 | |||
| f48f4480cd | |||
| db1a5ac9d2 | |||
| 748b853bf5 | |||
| d79de30636 | |||
| 45eca2af11 | |||
| 42fe541d36 | |||
| 43c262a78b | |||
| aadf96b9d2 | |||
| 3a21256fc2 | |||
| 7ede9ad0dd | |||
| ee43fbb5b0 | |||
| 35e8cd9492 | |||
| a91cdcab8b | |||
| 51496168b2 | |||
| e3987cfcac | |||
| ff179fcc66 | |||
| ba3fead0ee | |||
| 8f34c2134a | |||
| 88900e4a51 | |||
| b77bb3b55e | |||
| 350ff2e672 | |||
| 24476dcd22 | |||
| 8ed076c54b | |||
| 47a40ebad4 | |||
| 7de26107eb | |||
| 9ca4b31975 | |||
| 97cc2017a6 | |||
| 30639ff2e2 | |||
| dc5f15406f | 
							
								
								
									
										23
									
								
								.github/workflows/docker-publish.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										23
									
								
								.github/workflows/docker-publish.yml
									
									
									
									
										vendored
									
									
								
							@@ -4,7 +4,7 @@ on:
 | 
			
		||||
    branches:
 | 
			
		||||
      - master
 | 
			
		||||
jobs:
 | 
			
		||||
  publishing:
 | 
			
		||||
  publish_jenkins:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    permissions:
 | 
			
		||||
      contents: read
 | 
			
		||||
@@ -17,5 +17,26 @@ jobs:
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKER_LOGIN }}
 | 
			
		||||
          password: ${{ secrets.DOCKER_PASSWORD }}
 | 
			
		||||
      - name: Update version
 | 
			
		||||
        run: ./autoupdate.sh
 | 
			
		||||
      - name: Deploy
 | 
			
		||||
        run: ./deploy
 | 
			
		||||
  publish_jenkins_ssh-agent:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    permissions:
 | 
			
		||||
      contents: read
 | 
			
		||||
      packages: write
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout repository
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
      - name: Log into registry
 | 
			
		||||
        uses: docker/login-action@28218f9b04b4f3f62068d7b6ce6ca5b26e35336c
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKER_LOGIN }}
 | 
			
		||||
          password: ${{ secrets.DOCKER_PASSWORD }}
 | 
			
		||||
      - name: Update version
 | 
			
		||||
        working-directory: ./ssh-agent/
 | 
			
		||||
        run: ./autoupdate.sh
 | 
			
		||||
      - name: Deploy
 | 
			
		||||
        working-directory: ./ssh-agent/
 | 
			
		||||
        run: ./deploy
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										21
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										21
									
								
								Dockerfile
									
									
									
									
									
								
							@@ -1,23 +1,28 @@
 | 
			
		||||
FROM ubuntu:20.04
 | 
			
		||||
FROM ubuntu:24.04
 | 
			
		||||
 | 
			
		||||
LABEL maintainer="ovsyannikov.alexey95@gmail.com"
 | 
			
		||||
 | 
			
		||||
USER root
 | 
			
		||||
RUN mv /bin/sh /bin/sh.old && ln -s /bin/bash /bin/sh
 | 
			
		||||
 | 
			
		||||
ENV TZ=Etc/GMT
 | 
			
		||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
 | 
			
		||||
RUN apt update && apt -y install wget gnupg2 openjdk-11-jdk zip unzip curl sudo git software-properties-common pass axel
 | 
			
		||||
RUN apt update && apt -y install wget gnupg2 zip unzip curl sudo git software-properties-common pass axel
 | 
			
		||||
 | 
			
		||||
RUN deluser --remove-home ubuntu
 | 
			
		||||
RUN mkdir -p /var/jenkins_home/jenkins && cd /var/jenkins_home/ &&\
 | 
			
		||||
    useradd -s /bin/bash -G sudo -d /var/jenkins_home -u 1000 jenkins &&\
 | 
			
		||||
    chmod 777 /tmp
 | 
			
		||||
 | 
			
		||||
ENTRYPOINT /var/jenkins_home/run
 | 
			
		||||
COPY ./run /var/jenkins_home/
 | 
			
		||||
RUN chown -R jenkins:jenkins /var/jenkins_home
 | 
			
		||||
 | 
			
		||||
USER 1000
 | 
			
		||||
USER jenkins
 | 
			
		||||
 | 
			
		||||
RUN curl -s "https://get.sdkman.io" | bash
 | 
			
		||||
RUN source "$HOME/.sdkman/bin/sdkman-init.sh" &&\
 | 
			
		||||
    sdk install java `sdk ls java | grep librca | grep " 17" | grep -m 1 -Eo "(.?[0-9]{1,2}){3}" | head -1`-librca &&\
 | 
			
		||||
    sdk default java `sdk ls java | grep librca | grep " 17" | grep -m 1 -Eo "(.?[0-9]{1,2}){3}" | head -1`-librca
 | 
			
		||||
 | 
			
		||||
RUN cd /var/jenkins_home/ && wget http://mirrors.jenkins.io/war-stable/2.492.1/jenkins.war
 | 
			
		||||
 | 
			
		||||
ENTRYPOINT /var/jenkins_home/run
 | 
			
		||||
VOLUME /var/jenkins_home/jenkins
 | 
			
		||||
 | 
			
		||||
RUN cd /var/jenkins_home/ && axel -a -n 8 --max-redirect=256 http://mirrors.jenkins.io/war-stable/2.346.2/jenkins.war
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										11
									
								
								autoupdate.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										11
									
								
								autoupdate.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,11 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
if [ -z "$1" ]; then
 | 
			
		||||
  newVersion="2.528.1"
 | 
			
		||||
else
 | 
			
		||||
  newVersion="$1"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
sed -i -E "s/[0-9\.]+\/jenkins.war/${newVersion}\/jenkins.war/g" Dockerfile
 | 
			
		||||
sed -i -E "s/version=\"[0-9\.]+\"/version=\"${newVersion}\"/g" deploy
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										13
									
								
								deploy
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								deploy
									
									
									
									
									
								
							@@ -9,10 +9,11 @@ function assert_success() {
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
version="2.346.2"
 | 
			
		||||
version="2.492.1"
 | 
			
		||||
image_name=jenkins
 | 
			
		||||
 | 
			
		||||
assert_success docker build -t jenkins:$version ./
 | 
			
		||||
assert_success docker tag jenkins:$version insanusmokrassar/jenkins:$version
 | 
			
		||||
assert_success docker tag jenkins:$version insanusmokrassar/jenkins:latest
 | 
			
		||||
assert_success docker push insanusmokrassar/jenkins:$version
 | 
			
		||||
assert_success docker push insanusmokrassar/jenkins:latest
 | 
			
		||||
assert_success docker build -t $image_name:$version ./
 | 
			
		||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:$version
 | 
			
		||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:latest
 | 
			
		||||
assert_success docker push insanusmokrassar/$image_name:$version
 | 
			
		||||
assert_success docker push insanusmokrassar/$image_name:latest
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								run
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								run
									
									
									
									
									
								
							@@ -1,5 +1,7 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
source "$HOME/.bashrc"
 | 
			
		||||
 | 
			
		||||
export JENKINS_HOME="$HOME/jenkins"
 | 
			
		||||
 | 
			
		||||
java $JENKINS_LAUNCH_ARGS -jar ~/jenkins.war
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										20
									
								
								ssh-agent/Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								ssh-agent/Dockerfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
			
		||||
FROM jenkins/ssh-agent:5.38.0-jdk17 as ssh-agent
 | 
			
		||||
 | 
			
		||||
LABEL maintainer="ovsyannikov.alexey95@gmail.com"
 | 
			
		||||
 | 
			
		||||
USER root
 | 
			
		||||
 | 
			
		||||
RUN mv /bin/sh /bin/sh.old && ln -s /bin/bash /bin/sh
 | 
			
		||||
 | 
			
		||||
ENV TZ=Etc/GMT
 | 
			
		||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
 | 
			
		||||
RUN apt update && apt -y install wget gnupg2 zip unzip curl sudo git software-properties-common pass axel
 | 
			
		||||
 | 
			
		||||
RUN chmod 777 /tmp
 | 
			
		||||
 | 
			
		||||
#USER jenkins
 | 
			
		||||
 | 
			
		||||
RUN curl -s "https://get.sdkman.io" | bash
 | 
			
		||||
RUN source "$HOME/.sdkman/bin/sdkman-init.sh" &&\
 | 
			
		||||
    sdk install java `sdk ls java | grep librca | grep " 17" | grep -m 1 -Eo "(.?[0-9]{1,2}){3}" | head -1`-librca &&\
 | 
			
		||||
    sdk default java `sdk ls java | grep librca | grep " 17" | grep -m 1 -Eo "(.?[0-9]{1,2}){3}" | head -1`-librca
 | 
			
		||||
							
								
								
									
										11
									
								
								ssh-agent/autoupdate.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										11
									
								
								ssh-agent/autoupdate.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,11 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
if [ -z "$1" ]; then
 | 
			
		||||
  newVersion="5.38.0"
 | 
			
		||||
else
 | 
			
		||||
  newVersion="$1"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
sed -i -E "s/ssh-agent:[0-9\.]+/ssh-agent:${newVersion}/g" Dockerfile
 | 
			
		||||
sed -i -E "s/version=\"[0-9\.]+\"/version=\"${newVersion}\"/g" deploy
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										19
									
								
								ssh-agent/deploy
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								ssh-agent/deploy
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,19 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
function assert_success() {
 | 
			
		||||
    "${@}"
 | 
			
		||||
    local status=${?}
 | 
			
		||||
    if [ ${status} -ne 0 ]; then
 | 
			
		||||
        echo "### Error ${status} at: ${BASH_LINENO[*]} ###"
 | 
			
		||||
        exit ${status}
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
version="5.38.0"
 | 
			
		||||
image_name=jenkins-ssh-agent
 | 
			
		||||
 | 
			
		||||
assert_success docker build -t $image_name:$version ./
 | 
			
		||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:$version
 | 
			
		||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:latest
 | 
			
		||||
assert_success docker push insanusmokrassar/$image_name:$version
 | 
			
		||||
assert_success docker push insanusmokrassar/$image_name:latest
 | 
			
		||||
		Reference in New Issue
	
	Block a user