TeamCity Dockerイメージを作る DockerFile を書いてみました。
起動したらTeamCityがすぐ使えることが目標。

FROM centos:6
RUN yum -y update
RUN yum -y install initscripts MAKEDEV
RUN yum -y install openssh-server*

RUN sed -ri 's/^#PermitRootLogin yes/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -ri 's/^UsePAM yes/UsePAM no/' /etc/ssh/sshd_config
RUN /etc/init.d/sshd start

# 任意のパスワードの場合は以下をコメントアウト & パスワードを書き換える
RUN echo 'root:root' | chpasswd

###########################################
RUN yum -y install java
RUN yum -y install wget
RUN yum -y install tar

RUN wget http://download-cf.jetbrains.com/teamcity/TeamCity-9.0.2.tar.gz
RUN tar zxvf TeamCity-9.0.2.tar.gz
#RUN /TeamCity/bin/runAll.sh start


##########################################
RUN echo #!/bin/bash > /etc/services.sh
RUN echo /TeamCity/bin/runAll.sh start >> /etc/services.sh
RUN echo /usr/sbin/sshd -D >> /etc/services.sh
RUN chmod +x /etc/services.sh

EXPOSE 22 8111
CMD /etc/services.sh

Buildはこんな感じ。

# docker build -t centos/teamcity9 .

起動はこんな感じ。

docker run -i -p 22 -p 8111 -t centos/teamcity9

portが何番に割り当てられたか確認。

# docker ps
CONTAINER ID        IMAGE                     COMMAND                CREATED             STATUS              PORTS                                            NAMES
9cc994e6509d        centos/teamcity9:latest   "/bin/sh -c /etc/ser   33 seconds ago      Up 31 seconds       0.0.0.0:49161->8111/tcp, 0.0.0.0:49162->22/tcp   stoic_ptolemy

49161 にWebが割当たってますね。
アクセスしてみると。。。

キタコレ!!!