> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Pandoc-import og -eksport

> Importér og eksportér dokumenter med Pandoc i en Kubernetes-installation.

Pandoc-konverteringer køres af **clsi**-tjenesten i hver Ayakaleaf Pro-pod, ligesom kompileringer: clsi beder nodens Docker Engine om at starte en container fra `PANDOC_IMAGE`. **web**-tjenesten viser import- og eksportmenuerne. Hvad funktionen gør, og hvordan imaget bygges, er beskrevet under [Pandoc-import og -eksport](https://ayakaleaf-pro.mintlify.site/da/on-premises/configuration/overleaf-toolkit/pandoc-import-and-export.md).

| | |
| - | - |
| Tjenester | web (menuer og ruter), clsi (kører konverteringen), i hver Ayakaleaf Pro-pod |
| Node | Docker Engine og `PANDOC_IMAGE` på hver node, der kan køre Ayakaleaf Pro |
| Kræver | [Sandboxed Compiles](https://ayakaleaf-pro.mintlify.site/da/on-premises/configuration/kubernetes/sandboxed-compiles.md) |
| Periodiske job | ingen |

### Konfiguration

**1. Læg imaget ind i Docker på hver node**

Byg imaget én gang fra mappen `develop/pandoc` i repositoryet [ayakaleaf-pro](https://github.com/ayaka-notes/ayakaleaf-pro), og indlæs det derefter i Docker på hver node, der kan køre Ayakaleaf Pro:

```bash theme={null}
docker build -t overleaf-pandoc:local develop/pandoc
docker save overleaf-pandoc:local | ssh node-1 sudo docker load    # repeat for every node
```

Eller push det til et registry, som noderne kan nå, og kør `sudo docker pull` på hver node. Ligesom TeX Live-imagene skal det ligge i **Docker**, ikke kun i containerd.

**2. ConfigMap**

```yaml theme={null}
  ENABLE_PANDOC_CONVERSIONS: "true"
  PANDOC_IMAGE: overleaf-pandoc:local
```

Både web og clsi læser `ENABLE_PANDOC_CONVERSIONS` fra det samme ConfigMap, så de kan ikke være uenige på Kubernetes.

**3. Anvend og genstart**

```bash theme={null}
kubectl apply -f 30-config.yaml
kubectl -n overleaf rollout restart deployment/overleaf     # or statefulset/overleaf
```

### Flere replikaer

Intet ekstra ud over at have imaget på hver node: hver replika konverterer på sin egen node.

### Testet på Kubernetes

Med imaget bygget fra `develop/pandoc` og indlæst i Docker på hver node med `docker save | docker load`, på Kubernetes 1.37 med én replika, består vores end-to-end-tests for Pandoc (6 tilfælde): import af et Markdown-dokument som et LaTeX-projekt, fejlen, der vises for et ødelagt Word-dokument, eksport til Word (som kan importeres igen), Markdown og HTML samt menuerne, der er skjult uden `ENABLE_PANDOC_CONVERSIONS`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.