Skip to content

Commit c1425e4

Browse files
author
Dmitry Berezovsky
committed
Initial
1 parent bfe3ac8 commit c1425e4

File tree

3 files changed

+75
-0
lines changed

3 files changed

+75
-0
lines changed

Dockerfile

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
FROM logicify/java8
2+
3+
RUN yum install -y python-dev python-pip gcc make gcc-c++ \
4+
&& yum install -y libpng libjpeg ImageMagick GraphicsMagick \
5+
&& yum clean all
6+
7+
# --------------------------------------------------------------- teamcity-agent
8+
ENV TEAMCITY_VERSION 9.0.4
9+
ENV TEAMCITY_GIT_PATH /usr/bin/git
10+
ENV AGENT_PORT 9090
11+
12+
RUN curl -LO http://download.jetbrains.com/teamcity/TeamCity-$TEAMCITY_VERSION.war \
13+
&& unzip -qq TeamCity-$TEAMCITY_VERSION.war -d /tmp/teamcity \
14+
&& unzip -qq /tmp/teamcity/update/buildAgent.zip -d /srv/teamcity-agent
15+
16+
COPY start-agent.sh /srv/teamcity-agent/bin/
17+
18+
RUN chmod +x /srv/teamcity-agent/bin/*.sh \
19+
&& mv /srv/teamcity-agent/conf/buildAgent.dist.properties /srv/teamcity-agent/conf/buildAgent.properties \
20+
21+
&& rm -f TeamCity-$TEAMCITY_VERSION.war \
22+
&& rm -fR /tmp/* \
23+
&& chown -R app:app /srv/teamcity-agent
24+
25+
26+
# ----------------------------------------------------------------------- nodejs
27+
ENV NODE_VERSION 0.12.2
28+
29+
RUN (curl -L http://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz | gunzip -c | tar x) \
30+
&& cp -R node-v${NODE_VERSION}-linux-x64/* /usr/ \
31+
&& rm -fR node-v${NODE_VERSION}-linux-x64 \
32+
&& npm update -g \
33+
&& npm install -g node-gyp grunt grunt-cli karma-cli bower aglio
34+
35+
# ------------------------------------------------------------------------ maven
36+
ENV MAVEN_VERSION 3.3.3
37+
38+
RUN (curl -L http://www.us.apache.org/dist/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz | gunzip -c | tar x) \
39+
&& mv apache-maven-$MAVEN_VERSION /opt/apache-maven
40+
41+
ENV M2_HOME /opt/apache-maven
42+
ENV MAVEN_OPTS -Xmx512m -Xss256k -XX:+UseCompressedOops
43+
44+
# ------------------------------------------------------------------------ docker
45+
46+
RUN yum install -y docker && yum clean all
47+
ENV DOCKER_AVAILABLE=1
48+
49+
# ------------------------------------------------------------------------
50+
51+
EXPOSE ${AGENT_PORT}
52+
VOLUME /srv/teamcity-agent/conf
53+
USER app
54+
55+
CMD ["/srv/teamcity-agent/bin/start-agent.sh"]

Readme.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
2+
It is required to set the following env variables:
3+
4+
* TEAMCITY_SERVER_URL - url pointing teamcity server installation
5+
* AGENT_PORT - port number for teamcity agent
6+
* AGENT_NAME - port number for teamcity agent

start-agent.sh

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
#!/bin/sh
2+
echo "Updating property file..."
3+
4+
sed -i "s|serverUrl=http://localhost:8111/|serverUrl=$TEAMCITY_SERVER_URL|" /srv/teamcity-agent/conf/buildAgent.properties
5+
sed -i "s|workDir=../work|workDir=/home/app/work|" /srv/teamcity-agent/conf/buildAgent.properties
6+
sed -i "s|ownPort=9090|ownPort=$AGENT_PORT|" /srv/teamcity-agent/conf/buildAgent.properties
7+
sed -i "s|name=|name=$AGENT_NAME|" /srv/teamcity-agent/conf/buildAgent.properties
8+
9+
echo "UPDATED:"
10+
cat /srv/teamcity-agent/conf/buildAgent.properties
11+
12+
echo "============================================"
13+
14+
/srv/teamcity-agent/bin/agent.sh run

0 commit comments

Comments
 (0)