---
title: "TYPO3 screenshots Docker container"
manual: "How to Document"
version: "main"
permalink: "https://docs.typo3.org/permalink/h2document:screenshot-container"
source: "Reference/ScreenshotContainer/Index.rst"
rendered: "2026-09-26T10:48:44+00:00"
---

# TYPO3 screenshots Docker container {#screenshot-container}

We have prepared a Docker container that you can use to create screenshots
for the official documentation, which already follows out
[Guidelines for screenshots](https://docs.typo3.org/permalink/h2document:automatic-screenshots).

**Table of content**

-   [Quick screenshots using Docker](https://docs.typo3.org/permalink/h2document:quick-screenshots-using-docker)
-   [Resetting the container](https://docs.typo3.org/permalink/h2document:resetting-the-container)
-   [Accessing the container shell](https://docs.typo3.org/permalink/h2document:accessing-the-container-shell)
-   [Installing additional extensions with Composer](https://docs.typo3.org/permalink/h2document:installing-additional-extensions-with-composer)
-   [Running TYPO3 CLI commands](https://docs.typo3.org/permalink/h2document:running-typo3-cli-commands)

> [!NOTE]
> **See also**
>
> -   [Guidelines for screenshots in the official documentation](https://docs.typo3.org/permalink/h2document:automatic-screenshots)
> -   [linawolf/typo3-screenshots](https://hub.docker.com/r/linawolf/typo3-screenshots)
> -   [Ready to use Project for Screenshots (GitHub)](https://github.com/TYPO3-Documentation/site-introduction)

## Quick screenshots using Docker {#screenshot-quick}

You can run the screenshot project locally using the prebuilt Docker image:

```bash
docker run -d --name typo3-screenshots -p 8080:80 linawolf/typo3-screenshots

# Follow the logs to track progress:
docker logs -f typo3-screenshots
```

Once setup is complete, open:

[http://localhost:8080/typo3](http://localhost:8080/typo3)

> [!NOTE]
> The container resets on every run. It is ideal for reproducible test
> environments and fresh screenshots.

## Resetting the container {#screenshot-reset}

To start fresh, you can stop and remove the running container, then launch it
again.

```bash
docker stop typo3-screenshots
docker rm typo3-screenshots
docker run -d --name typo3-screenshots -p 8080:80 linawolf/typo3-screenshots
```

This gives you a clean TYPO3 instance every time.

## Accessing the container shell {#screenshot-ssh}

You can access the container's shell to explore the file system, install
additional extensions, or run TYPO3 CLI commands:

```bash
docker exec -it typo3-screenshots bash
```

This drops you into a terminal session inside the container.

After accessing the container shell, you can exit
at any time by typing:

```bash
exit
```

This will close the interactive shell session and return you to your host
terminal.

## Installing additional extensions with Composer {#screenshot-composer}

Once inside the container (via the [container shell](https://docs.typo3.org/permalink/h2document:screenshot-ssh)), you can install TYPO3
extensions using Composer. For example:

```bash
composer require typo3/cms-lowlevel
```

Then you can run the setup command to register the extension:

```bash
./vendor/bin/typo3 extension:setup
```

> [!NOTE]
> Since the container resets every time, any installed extension will be lost
> on restart unless you build a new image with those extensions included. This
> is intentional to ensure a consistent environment for screenshots.

## Running TYPO3 CLI commands {#screenshot-commands}

To run any TYPO3 CLI command inside the container, use:

```bash
docker exec -it typo3-screenshots ./vendor/bin/typo3 <command>
```

Examples:

```bash
docker exec -it typo3-screenshots ./vendor/bin/typo3 list
docker exec -it typo3-screenshots ./vendor/bin/typo3 extension:setup
docker exec -it typo3-screenshots ./vendor/bin/typo3 language:update
```
