Skip to content

Conversation

@ahouseholder
Copy link
Contributor

This PR modularizes the existing Dockerfile to let us have different targets for test and docs. It also adds a Makefile to reduce the need for folks to remember complicated docker commands.

% make
Usage: make [target]

Targets:
 all         - Display this help message
 docs        - Build and run the docs Docker image
 docker_test - Build and run the test Docker image

 dockerbuild_test - Build the test Docker image
 dockerrun_test   - Run the test Docker image
 dockerbuild_docs - Build the docs Docker image
 dockerrun_docs   - Run the docs Docker image

 clean - Remove the Docker images
 help  - Display this help message

Copilot summary

This pull request includes significant updates to the Docker setup, Makefile, and README documentation to streamline the development workflow and improve clarity on how to build and run the project. Below are the most important changes:

Dockerfile Improvements:

  • Introduced multi-stage builds to separate base, dependencies, test, and docs stages for better modularity and efficiency.
  • Added pip install --upgrade pip to ensure the latest version of pip is used.
  • Updated the COPY commands to simplify file inclusion and set the PYTHONPATH environment variable.

Makefile Additions:

  • Added project-specific variables and targets to build and run Docker images for testing and documentation.
  • Included clean target to remove Docker images and help target to display usage instructions.

Documentation Enhancements:

  • Updated the README to include instructions for building and running the site and tests using Docker and Makefile commands. [1] [2]
  • Provided alternative commands for users who do not have make installed. [1] [2]

@ahouseholder ahouseholder linked an issue Feb 19, 2025 that may be closed by this pull request
@ahouseholder ahouseholder changed the title 582 dockerize the mkdocs dev server Dockerize the mkdocs dev server Feb 19, 2025
@ahouseholder ahouseholder added this to the 2025-03 milestone Feb 19, 2025
@ahouseholder ahouseholder self-assigned this Feb 19, 2025
@ahouseholder ahouseholder added enhancement New feature or request tech/environment Project environment, deployment, CI, etc. labels Feb 19, 2025
@sei-vsarvepalli
Copy link
Contributor

May need to reset this to an earlier commit and catch up with the changes. The lint checks will also need to be satisfied in the markdown format.

@ahouseholder
Copy link
Contributor Author

ahouseholder commented Feb 19, 2025

May need to reset this to an earlier commit and catch up with the changes. The lint checks will also need to be satisfied in the markdown format.

Should be fixed as of 3d2b1a2, will know in a moment.

Edit to add: markdownlint succeeded on 3d2b1a2

@ahouseholder ahouseholder marked this pull request as draft February 19, 2025 21:34
@ahouseholder
Copy link
Contributor Author

Converting back to draft until i have a chance to address feedback above.

@ahouseholder ahouseholder marked this pull request as ready for review February 20, 2025 15:53
@sei-renae sei-renae self-requested a review February 24, 2025 16:56
@ahouseholder ahouseholder merged commit 73286d7 into main Feb 24, 2025
6 checks passed
@ahouseholder ahouseholder deleted the 582-dockerize-the-mkdocs-dev-server branch February 24, 2025 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request tech/environment Project environment, deployment, CI, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dockerize the mkdocs dev server

4 participants