AutoLTX
Automated build system for compiling Latex Files, mimicing the Overleaf build system.
Getting Image:
Either (a) download the image from the dockerhub repository (2.5GB download) or (b) build it locally (5GB download).
a. Download
This image is published to dockerhub, pull it using
docker pull phanipavank/autoltx:latest
b. Build
Clone the repository which contains the Dockerfile and other necessary files.
git clone https://git.pvnweb.dedyn.io/phanipavank/AutoLTX --depth=1
This is hosted on my public git server, use responsibly.
Then, build the docker container using:
docker build -t autoltx:latest .
Usage
Download the overleaf project as a zip file or using the git integration for easier integration.
Use the following command to attach the project folder to the built container.
docker run --rm -it -e "mainFile=<mainTEXfile>" -v <projectFolderPath>:/app/project:z --user 1000:1000 phanipavank/autoltx:latest
Replace <mainTEXfile> with the primary tex file to compile, <projectFolderPath> with the path to the project folder.
This will compile your project whenever a change is observed in the mainTEXfile file.
Observables:
- Compilation starts as soon as you start the container, and if the required files are present in the project folder.
- The container will create a new folder
pdfto store all the build files. - You can follow the compilation logs in the terminal for any errors or warnings.
- Once the project compiles, the resulting PDF ends up in the
<projectFolderPath>, calledoutput.pdf. Keep it open so any changes to the main tex file triggers a refresh by your PDF viewer. Other files includecompile.sh: the main compilation script,latexmkrc: used by thelatexmkcompiler, edit cautiously, and.autoltx: used for versioning the container scripts. - These files are added to gitignore to avoid tracking by git.