mirror of
https://github.com/InsanusMokrassar/JenkinsDocker.git
synced 2025-09-04 15:49:16 +00:00
Compare commits
1 Commits
Author | SHA1 | Date | |
---|---|---|---|
b34b7238e0 |
42
.github/workflows/docker-publish.yml
vendored
42
.github/workflows/docker-publish.yml
vendored
@@ -1,42 +0,0 @@
|
|||||||
name: Docker
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
jobs:
|
|
||||||
publish_jenkins:
|
|
||||||
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
|
|
||||||
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,28 +1,23 @@
|
|||||||
FROM ubuntu:24.04
|
FROM ubuntu:20.04
|
||||||
|
|
||||||
LABEL maintainer="ovsyannikov.alexey95@gmail.com"
|
LABEL maintainer="ovsyannikov.alexey95@gmail.com"
|
||||||
|
|
||||||
RUN mv /bin/sh /bin/sh.old && ln -s /bin/bash /bin/sh
|
USER root
|
||||||
|
|
||||||
ENV TZ=Etc/GMT
|
ENV TZ=Etc/GMT
|
||||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
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 apt update && apt -y install wget gnupg2 openjdk-8-jdk zip unzip curl sudo git software-properties-common pass
|
||||||
|
|
||||||
RUN deluser --remove-home ubuntu
|
|
||||||
RUN mkdir -p /var/jenkins_home/jenkins && cd /var/jenkins_home/ &&\
|
RUN mkdir -p /var/jenkins_home/jenkins && cd /var/jenkins_home/ &&\
|
||||||
useradd -s /bin/bash -G sudo -d /var/jenkins_home -u 1000 jenkins &&\
|
useradd -s /bin/bash -G sudo -d /var/jenkins_home -u 1000 jenkins &&\
|
||||||
chmod 777 /tmp
|
chmod 777 /tmp
|
||||||
|
|
||||||
|
ENTRYPOINT /var/jenkins_home/run
|
||||||
COPY ./run /var/jenkins_home/
|
COPY ./run /var/jenkins_home/
|
||||||
RUN chown -R jenkins:jenkins /var/jenkins_home
|
RUN chown -R jenkins:jenkins /var/jenkins_home
|
||||||
|
|
||||||
USER jenkins
|
USER 1000
|
||||||
|
|
||||||
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
|
VOLUME /var/jenkins_home/jenkins
|
||||||
|
|
||||||
|
RUN cd /var/jenkins_home/ && wget http://mirrors.jenkins.io/war-stable/2.277.4/jenkins.war
|
||||||
|
@@ -1,11 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
newVersion="2.516.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,11 +9,10 @@ function assert_success() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
version="2.492.1"
|
version="2.277.2"
|
||||||
image_name=jenkins
|
|
||||||
|
|
||||||
assert_success docker build -t $image_name:$version ./
|
assert_success docker build -t jenkins:$version ./
|
||||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:$version
|
assert_success docker tag jenkins:$version insanusmokrassar/jenkins:$version
|
||||||
assert_success docker tag $image_name:$version insanusmokrassar/$image_name:latest
|
assert_success docker tag jenkins:$version insanusmokrassar/jenkins:latest
|
||||||
assert_success docker push insanusmokrassar/$image_name:$version
|
assert_success docker push insanusmokrassar/jenkins:$version
|
||||||
assert_success docker push insanusmokrassar/$image_name:latest
|
assert_success docker push insanusmokrassar/jenkins:latest
|
||||||
|
2
run
2
run
@@ -1,7 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
source "$HOME/.bashrc"
|
|
||||||
|
|
||||||
export JENKINS_HOME="$HOME/jenkins"
|
export JENKINS_HOME="$HOME/jenkins"
|
||||||
|
|
||||||
java $JENKINS_LAUNCH_ARGS -jar ~/jenkins.war
|
java $JENKINS_LAUNCH_ARGS -jar ~/jenkins.war
|
||||||
|
@@ -1,20 +0,0 @@
|
|||||||
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
|
|
@@ -1,11 +0,0 @@
|
|||||||
#!/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
|
|
||||||
|
|
@@ -1,19 +0,0 @@
|
|||||||
#!/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