# New lsst-texmf Docker images

**URL:** <https://www.rubin.community/t/new-lsst-texmf-docker-images/4333>\
**Category:** DM Notifications\
**Tags:** doc-engineering\
**Created:** [August 17, 2020, 3:31pm UTC](https://www.rubin.community/t/new-lsst-texmf-docker-images/4333 "2020-08-17T15:31:08Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jsick](https://sea2.discourse-cdn.com/flex002/user_avatar/www.rubin.community/jsick/32/672_2.png) [@jsick](https://www.rubin.community/u/jsick)\
**Post date:** [August 17, 2020, 3:31pm UTC](https://www.rubin.community/t/new-lsst-texmf-docker-images/4333/1 "2020-08-17T15:31:08Z")

</div>

Today we’re launching a revised [lsst-texmf](https://lsst-texmf.lsst.io) Docker image for compiling Rubin Observatory LaTeX documents that’s smaller, features Python 3.7, and builds faster.

Here’s a summary of the new features:

- By including Python 3.7 in the Docker image, your document’s `make` build can now run Python scripts. These scripts can be any of lsst-texmf’s built-in scripts (such as `generateAcronyms.py` and `db2authors.py`) or your own scripts included in your document’s repository. If your script needs third-party dependencies, you can PR it into the Docker image through a [requirements.txt](https://github.com/lsst/lsst-texmf/blob/master/requirements.txt) file.
- We’ve reduced the Docker image size from 3.5 GB down to about 2 GB thanks to a more careful curation of texlive packages and [by not installing texlive documentation](https://github.com/lsst/lsst-texmf/commit/80ca91129df67ac19757cd9b1b89aacc6f8ee93a).
- The lsst-texmf repository’s CI is now much faster for two reasons. First, we switched to GitHub Actions. Second, we cache a base image for a [multi-stage Docker image build](https://github.com/lsst/lsst-texmf/commit/297a58664311660d68073882bb5cde1e8b941646) so that CI doesn’t need to `apt-get install` the full suite of texlive packages every time. The base image is refreshed on a weekly basis.

We’ve tested this new Docker image on a range of Rubin Observatory documents. If you notice that your document doesn’t build, though, let us know and we can make the necessary adjustments.

For more information about compiling LaTeX documents using the lsst-texmf Docker image, [see our documentation](https://lsst-texmf.lsst.io/docker.html).

---

<div class="post-metadata">

**Author:** ![jsick](https://sea2.discourse-cdn.com/flex002/user_avatar/www.rubin.community/jsick/32/672_2.png) [@jsick](https://www.rubin.community/u/jsick)\
**Post date:** [August 18, 2020, 2:03pm UTC](https://www.rubin.community/t/new-lsst-texmf-docker-images/4333/2 "2020-08-18T14:03:18Z")

</div>

To demonstrate the performance difference, this lsst-texmf build on **Travis CI** took 6 minutes 26 seconds:

 ![Screen Shot 2020-08-18 at 10.04.34 AM](https://us1.discourse-cdn.com/flex002/uploads/rubin/original/2X/8/84e3f8b7f9b15ad6cfbb49237040cd42e58d02be.png)

**GitHub Actions** took 2 minutes 58 seconds to build, test, and upload lsst-texmf images:

 ![Screen Shot 2020-08-18 at 10.03.17 AM](https://us1.discourse-cdn.com/flex002/uploads/rubin/original/2X/d/d58665ff13e57626abcd5fa4dda37281fcb46900.png)

As you can see, it takes about 55 seconds to download the cached images, and only 14 seconds to rebuild the images with the new version of lsst-texmf.
