From 20023ec5edeb76af2b4e655b810519a4ecfbe985 Mon Sep 17 00:00:00 2001
From: David Beniamine <david@beniamine.net>
Date: Sun, 31 Jan 2021 23:19:02 +0100
Subject: [PATCH] New cleaner image

---
 Dockerfile               | 19 ++++---------------
 Readme.md                | 32 ++++++++++++++++++++++++++++++++
 puppeteerConfigFile.json |  7 -------
 3 files changed, 36 insertions(+), 22 deletions(-)
 delete mode 100644 puppeteerConfigFile.json

diff --git a/Dockerfile b/Dockerfile
index 3726769..8bc12fb 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,29 +1,18 @@
 FROM pandoc/latex
 
 RUN apk add --no-cache \
+    chromium \
     make \
     nodejs \
     npm
 
+ENV CHROME_BIN="/usr/bin/chromium-browser" \
+    PUPPETEER_SKIP_CHROMIUM_DOWNLOAD="true"
+
 RUN npm install mermaid-filter
 
 ENV PATH=${PATH}:/data/node_modules/.bin
 
 RUN tlmgr install textpos
 
-ARG GID=1000
-ARG UID=1000
-
-# Add user so we don't need --no-sandbox.
-RUN addgroup -S pptruser -g $GID && adduser -S -G pptruser -u $UID pptruser \
-    && mkdir -p /home/pptruser \
-    && chown -R pptruser:pptruser /home/pptruser \
-    && chown -R pptruser:pptruser /data \
-    && chmod o+w /opt/texlive/texdir/texmf-var
-
-# Run everything after as non-privileged user.
-USER pptruser
-WORKDIR /home/pptruser
-COPY puppeteerConfigFile.json /home/pptruser/.puppeteer.json
-
 ENTRYPOINT /bin/sh
diff --git a/Readme.md b/Readme.md
index 4418dd0..3191409 100644
--- a/Readme.md
+++ b/Readme.md
@@ -16,3 +16,35 @@ pages:
   only:
   - master
 ```
+
+## Troubleshooting
+
+
+If you got an issue like :
+
+```
+ events.js:292
+     throw er; // Unhandled 'error' event
+     ^
+
+ Error: ENOENT: no such file or directory, open '/tmp/tmp-11UOaQJNu37LGm.tmp.png'
+ Emitted 'error' event on ReadStream instance at:
+     at internal/fs/streams.js:136:12
+     at FSReqCallback.oncomplete (fs.js:156:23) {
+ errno: -2,
+ code: 'ENOENT',
+ syscall: 'open',
+ path: '/tmp/tmp-11UOaQJNu37LGm.tmp.png'
+ }
+ Error running filter mermaid-filter:
+ Filter returned error status 1
+```
+
+To fix it, create a file called `.puppeteer.json` in the directory you run pandoc, that contains
+
+```
+ {
+     "executablePath": "/usr/bin/chromium-browser",
+     "args": ["--no-sandbox"]
+ }
+```
diff --git a/puppeteerConfigFile.json b/puppeteerConfigFile.json
deleted file mode 100644
index 7efcdaf..0000000
--- a/puppeteerConfigFile.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
-  "args": [
-    "--no-sandbox",
-    "--disable-setuid-sandbox",
-    "--disable-dev-shm-usage"
-  ],
-}
-- 
GitLab