Courseiva

200-901 Application Deployment and Security Practice Question

A developer is creating a Dockerfile for a Python Flask application. The application runs on port 5000. Which directive should be used to document that the container listens on this port?

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

EXPOSE 5000

The EXPOSE directive informs Docker that the container listens on specified ports at runtime. It does not actually publish the port but serves as documentation.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✓

    EXPOSE 5000

    Why this is correct

    EXPOSE 5000 documents that the container listens on port 5000 at runtime; it is metadata for image consumers and does not publish the port. This matches the requirement to document the Flask application's listening port.

  • ✗

    PORT 5000

    Why it's wrong here

    PORT is not a Dockerfile instruction; Docker would reject it as an unknown directive. EXPOSE 5000 is the correct directive, documenting the port the container listens on. PORT resembles environment-variable conventions in other platforms, which is why it appears plausible to developers new to Dockerfile syntax.

  • ✗

    PUBLISH 5000

    Why it's wrong here

    PUBLISH is not a Dockerfile instruction; publishing occurs at runtime via docker run -p or compose ports. EXPOSE 5000 documents the listening port inside the image. PUBLISH would be the right concept when mapping container ports to host ports during container execution, not during image build.

  • ✗

    LISTEN 5000

    Why it's wrong here

    LISTEN is not a Dockerfile instruction; it is a socket or server configuration concept, not image metadata. EXPOSE 5000 is the directive that documents the container's listening port. LISTEN would be relevant when configuring the Flask application's bind address or a reverse proxy, not the Dockerfile.

About these practice questions

This 200-901 question is part of Courseiva's 975-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This 200-901 practice question is part of Courseiva's free Cisco certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the 200-901 exam.