TeamCity on Docker Hub – it’s official now!

As the popularity of Docker is growing exponentially, Docker Hub has become a huge software distribution platform. Users publish their own images, companies start their official repositories, and everyone is happy.

Up until now JetBrains wasn’t part of this. Then we noticed over 300 images related to TeamCity server, created by enthusiastic Docker Hub users. We decided to join the club and make support for this platform official.

We’ve published the latest version of our software as ready-to-use images and we are going to keep them updated as soon as new versions appear.

There are currently three official TeamCity images in Docker Hub:
1. jetbrains/teamcity-server
Use this image to run a fully functional, ready-to-use TeamCity server. There are multiple options and additional parameters available, which are summarized in the image description on its Docker Hub page.

Once the server is running, you will definitely need some build agents to do the actual work (building) for you. We’ve prepared two separate images for that.

2. jetbrains/teamcity-agent
This image is recommended for general Java development. Build agents created from this image will support agent-side checkout for Git, Mercurial, and SVN, any Java-related activity (as we provide OpenJDK installed), and a full set of features related to Java development.

3. jetbrains/teamcity-minimal-agent
As the requirements for build agents vary considerably, we have also created this minimalistic agent image which you can use for simple builds or as a base for your own images.

Take a look at the official JetBrains Docker Hub page for more details about our Docker images. Give them a try and let us know what you think!

This entry was posted in Blogroll, FYI, How-To's. Bookmark the permalink.

12 Responses to TeamCity on Docker Hub – it’s official now!

  1. William Simmonds says:

    Hey guys,

    First of all, great move in releasing official images! I’ve just finished a first cut of packaging it for Kubernetes/Helm and am testing it. However, a couple of comments:

    – teamcity-agent although tagged as 9.1.7 actually isn’t. Upon startup it logs out “INFO – s.buildServer.agent.AgentMain2 – TeamCity Build Agent 10.0 EAP3 (build 41577),” – which certainly isn’t what I’d expect.

    – Any chance of making a public repository with the Dockerfiles in?

    Will

  2. Ekaterina Shliakhovetskaja says:

    Hi William,

    Thank you for pointing us to the problem with the agent. Will fix ASAP. If you connect this agent to your 9.1.7 server – it will downgrade itself and will work, but definitely the image on Docker Hub should be updated.
    Regarding Dockerfiles – we are going to make them public. May I ask why it is important for you?

    Looking forward to hearing from you!

    Regards,
    Kate

    P.S. You can contact me directly via email shkate at jetbrains.com.

  3. Keivan says:

    Any plans to release the source for the docker files? that way we could use the same setup but use a different base image to run tests on different versions of linux?

  4. Ekaterina Shliakhovetskaja says:

    Hi Keivan,
    We are working on this. We have several ideas how to simplify image customisation and as soon as we will pick the best one we will push Dockerfiles to public space.
    If you have some vision on this matter we will appreciate if you share it with us.

    Regards,
    Kate
    P.S. You can contact me directly via email shkate at jetbrains.com.

  5. Julian says:

    Thank you, great work.

    We’ve already moved our teamcity to docker using your official image. It is up and running, additional ENV-vars would be nice though.

    • Ekaterina Shliakhovetskaja says:

      Hello Julian,

      Thank you for your kind words! Great to hear that you are using our images now! Can you please tell us more about your specific needs and additional ENV-vars required?

      Regards,
      Kate

  6. Pavel Martynov says:

    Hi, we have our Linux agents to your docker image and it is works great!
    The next step should be “Docker build step”, for example I have C++/cmake project with tons of dependencies (you know, boost libs, etc) and I want place all of it in my image and run cmake build inside it.

  7. Evgeniy says:

    Thanks! Works! It is very helpful!

  8. Krisztian Gyuris says:

    Great stuff. I would like to use this for doing CI for Android and iOS apps. Can I do this with a macOS machine as a host and running docker on it?

  9. Andy says:

    Hi,

    Will you be releasing your images with support for windows containers as well? This would be really useful for us as were looking into docker at our company.

    Thanks

  10. Ekaterina Shliakhovetskaja says:

    Hi Andy,

    We have an issue in our tracker on this matter https://youtrack.jetbrains.com/issue/TW-47392. You can watch it to see the progress.

    Regards,
    Kate

Comments are closed.