Skip to content

asciidoctor/docker-asciidoctor

Repository files navigation

Asciidoctor Docker Container

The environment

This Docker image provides:

This image uses Alpine Linux 3.21.0 as base image.

Note
Docker Engine 20.10 or later is required (or any container engine supporting Alpine 3.14) to avoid unexpected No such file or directory errors (such as #214 or #215).
Note
This image uses the Go-based erd-go instead of the original Haskell-based erd to allow the Docker image to be provided as a multi-platform image.

How to use it

Just run:

docker run -it -u $(id -u):$(id -g) -v <your directory>:/documents/ asciidoctor/docker-asciidoctor

or the following for Podman:

podman run -it -v <your directory>:/documents/ docker.io/asciidoctor/docker-asciidoctor

Docker/Podman maps your directory with /documents directory in the container.

Note
You might need to add the option :z or :Z like <your directory>:/documents/:z or <your directory>:/documents/:Z if you are using SELinux. See Docker docs or Podman docs.

After you start the container, you can use Asciidoctor commands to convert AsciiDoc files that you created in the directory mentioned above. You can find several examples below.

  • To run Asciidoctor on a basic AsciiDoc file:

    asciidoctor sample.adoc
    asciidoctor-pdf sample.adoc
    asciidoctor-epub3 sample.adoc
  • To run AsciiDoc on an AsciiDoc file that contains diagrams:

    asciidoctor -r asciidoctor-diagram sample-with-diagram.adoc
    asciidoctor-pdf -r asciidoctor-diagram sample-with-diagram.adoc
    asciidoctor-epub3 -r asciidoctor-diagram sample-with-diagram.adoc
  • To run AsciiDoc on an AsciiDoc file that contains latexmath and stem blocks:

    asciidoctor -r asciidoctor-mathematical sample-with-diagram.adoc
    asciidoctor-pdf -r asciidoctor-mathematical sample-with-diagram.adoc
    asciidoctor-epub3 -r asciidoctor-mathematical sample-with-diagram.adoc
  • To use Asciidoctor Confluence:

    asciidoctor-confluence --host HOSTNAME --spaceKey SPACEKEY --title TITLE --username USER --password PASSWORD sample.adoc
  • To use Asciidoctor reveal.js with local downloaded reveal.js:

    asciidoctor-revealjs sample-slides.adoc
    asciidoctor-revealjs -r asciidoctor-diagram sample-slides.adoc
  • To use Asciidoctor reveal.js with online reveal.js:

    asciidoctor-revealjs -a revealjsdir=https://cdnjs.cloudflare.com/ajax/libs/reveal.js/3.9.2 sample-slides.adoc
    asciidoctor-revealjs -a revealjsdir=https://cdnjs.cloudflare.com/ajax/libs/reveal.js/3.9.2 -r asciidoctor-diagram sample-slides.adoc
  • To convert files in batch:

    docker run --rm -u $(id -u):$(id -g) -v $(pwd):/documents/ asciidoctor/docker-asciidoctor asciidoctor-pdf index.adoc

    or:

    podman run --rm -v $(pwd):/documents/ docker.io/asciidoctor/docker-asciidoctor asciidoctor-pdf index.adoc

How to contribute / do it yourself?