# Docker

## Language-specific properties <a href="#language-specific-properties" id="language-specific-properties"></a>

Discover and update the Docker [analysis-parameters](https://docs.sonarsource.com/sonarqube-server/10.8/analyzing-source-code/analysis-parameters "mention") in **Administration** > **Configuration** > **General Settings** > **Languages** > **Docker**

## Dockerfiles <a href="#dockerfiles" id="dockerfiles"></a>

**No NoSonar Support:**

Trailing comments are not permitted in Dockerfiles. For this reason, our Dockerfile parser does not support NOSONAR comments to suppress issues. Issues and hotspots must be reviewed in the UI.

**Missing Uniform Filename Convention:**

Dockerfiles can have any name and do not need a file extension. For this reason, it is difficult for the scanner and the analyzer to recognize all Dockerfiles.

By default, all files named `Dockerfile`, `Dockerfile.*`, or `*.dockerfile` are scanned by the Docker analyzer.

## Scanning files with your custom filename patterns <a href="#scanning-files-with-your-custom-filename-patterns" id="scanning-files-with-your-custom-filename-patterns"></a>

To associate additional files to the Docker Language, you can provide a custom list of patterns via the `sonar.docker.file.patterns` property which is located in the language-specific properties.

Adding a pattern to `sonar.docker.file.patterns` should be considered carefully, as each file can be assigned to only one language.

For example, adding the pattern `dockerfile.*` will create a conflict with the Java analyzer if a file named `dockerfile.java` exists. This will result in a non-functional analysis.

By default, the scanner still analyzes files with the `dockerfile.*` pattern but does not assign them to the Docker language to prevent having one file with multiple languages.

Patterns that could result in a possible language conflict can be specified via the scanner property `sonar.lang.patterns.docker` property. Files that are affected by this are analyzed by the scanner but not assigned to the Docker language.

## Related pages <a href="#related-pages" id="related-pages"></a>

* [analysis-scope](https://docs.sonarsource.com/sonarqube-server/10.8/project-administration/analysis-scope "mention") (See also [#wildcard-patterns](https://docs.sonarsource.com/sonarqube-server/10.8/project-administration/analysis-scope#wildcard-patterns "mention"))
* [external-analyzer-reports](https://docs.sonarsource.com/sonarqube-server/10.8/analyzing-source-code/importing-external-issues/external-analyzer-reports "mention")


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sonarsource.com/sonarqube-server/10.8/analyzing-source-code/languages/docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
