-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathDockerfile
141 lines (133 loc) · 3.65 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
FROM node
FROM jenkins/jenkins
ENV JAVA_OPTS="-Djenkins.install.runSetupWizard=false"
ARG GIT_COMMIT=unspecified
LABEL git_commit=$GIT_COMMIT
# Run this command to find git commit:-
#docker inspect quay.io/shazchaudhry/docker-jenkins | jq '.[].ContainerConfig.Labels'
# Once jenkins is running and configured, run the following command to find the list of plugins installed:
## curl -s -k "http://admin:admin@localhost:8080/pluginManager/api/json?depth=1" | jq -r '.plugins[].shortName' | tee plugins.txt
RUN /usr/local/bin/install-plugins.sh \
ace-editor \
ant \
antisamy-markup-formatter \
authentication-tokens \
blueocean \
blueocean-autofavorite \
blueocean-commons \
blueocean-config \
blueocean-dashboard \
blueocean-display-url \
blueocean-events \
blueocean-github-pipeline \
blueocean-git-pipeline \
blueocean-i18n \
blueocean-jwt \
blueocean-personalization \
blueocean-pipeline-api-impl \
blueocean-pipeline-editor \
blueocean-pipeline-scm-api \
blueocean-rest \
blueocean-rest-impl \
blueocean-web \
bouncycastle-api \
branch-api \
build-timeout \
cloudbees-folder \
credentials \
credentials-binding \
display-url-api \
docker-commons \
docker-workflow \
durable-task \
email-ext \
external-monitor-job \
favorite \
git \
git-client \
github \
github-api \
github-branch-source \
gitlab-plugin \
git-server \
global-build-stats \
gradle \
handlebars \
icon-shim \
jackson2-api \
jquery-detached \
junit \
keycloak \
ldap \
mailer \
mapdb-api \
matrix-auth \
matrix-project \
metrics \
momentjs \
pam-auth \
pipeline-build-step \
pipeline-github-lib \
pipeline-graph-analysis \
pipeline-input-step \
pipeline-milestone-step \
pipeline-model-api \
pipeline-model-declarative-agent \
pipeline-model-definition \
pipeline-model-extensions \
pipeline-rest-api \
pipeline-stage-step \
pipeline-stage-tags-metadata \
pipeline-stage-view \
plain-credentials \
pubsub-light \
purge-job-history \
resource-disposer \
role-strategy \
scm-api \
script-security \
sse-gateway \
ssh-credentials \
ssh-slaves \
structs \
subversion \
timestamper \
token-macro \
variant \
windows-slaves \
workflow-aggregator \
workflow-api \
workflow-basic-steps \
workflow-cps \
workflow-cps-global-lib \
workflow-durable-task-step \
workflow-job \
workflow-multibranch \
workflow-scm-step \
workflow-step-api \
workflow-support \
ws-cleanup
USER root
# # Install Docker from official repo
# RUN apt-get update -qq && \
# apt-get install -qqy apt-transport-https ca-certificates curl gnupg2 software-properties-common && \
# curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - && \
# apt-key fingerprint 0EBFCD88 && \
# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" && \
# apt-get update -qq && \
# apt-get install -qqy docker-ce && \
# usermod -aG docker jenkins && \
# chown -R jenkins:jenkins $JENKINS_HOME/
RUN \
apt-get update && apt-get install -y --no-install-recommends --no-install-suggests curl bzip2 build-essential libssl-dev libreadline-dev zlib1g-dev maven && \
rm -rf /var/lib/apt/lists/* && \
curl -L https://github.com/sstephenson/ruby-build/archive/v20180329.tar.gz | tar -zxvf - -C /tmp/ && \
cd /tmp/ruby-build-* && ./install.sh && cd / && \
ruby-build -v 2.5.1 /usr/local && rm -rfv /tmp/ruby-build-* && \
gem install bundler --no-rdoc --no-ri && \
gem install pact_broker-client
# VOLUME [$JENKINS_HOME, "/var/run/docker.sock"]
USER root
COPY --from=0 /usr/local /usr/local
RUN npm --version
USER jenkins