Public Repository

Last pushed: 2 years ago
Short Description in a docker container
Full Description

GitHub Repo:

I built this repository for hosting my technical blog + resume + work portfolio. I containerized the sphinx-bootstrap repository so that on startup it will convert any rst files mounted from a host volume directory into themed, mobile-ready html. It is also SEO-ready for integration with Google Analytics.

I use this repository for hosting and rendering rst as html on my blog:

This project started because I wanted to write content and not worry about formatting. When the container starts it converts reStructuredText Markup rst files into readable, static html. It does this by using the python Sphinx bootstrap documentation generator built from Sphinx + bootstrap. Once containerized, I could focus my time on content (like this post). As a fan of data-driven products, I added configurable integration points for Google Analytics and Google Search Console. I like that out-of-the-box the sphinx-bootstrap-theme comes with support for multiple bootswatch themes and there are even more themes available from the bootswatch repository and bootswatch website. Additionally it creates well-formatted, mobile-ready blost posts and web pages.

Integrating with Google Analytics

Set your Google Analytics Tracking Code to the ENV_GOOGLE_ANALYTICS_CODE environment variable before container creation

During container startup the environment variable ENV_GOOGLE_ANALYTICS_CODE will be automatically installed into the default html layout on every page across your site

Integrating with Google Search Console

Automatic sitemap.xml creation

When the container starts or you manually rebuild the html content it will automatically build a sitemap.xml from any files ending with a .rst extension in the repository's root directory. This file is stored in the environment variable ENV_DOC_OUTPUT_DIR directory. This is handy when you want to integrate your site into the Google Search Console and it should look similar to:

Docker Pull Command