Deploy an Mkdocs site
Mkdocs is a modern documentation platform where teams can document products, internal knowledge bases and APIs.
Install Mkdocs
MkDocs requires a recent version of Python and the Python package manager, pip, to be installed on your system. To install pip, refer to the Mkdocs Installation guide. With pip installed, run:
$ pip install mkdocs
Create an Mkdocs project
Use the mkdocs new
command to create a new application:
$ mkdocs new <PROJECT_NAME>
Then cd
into your project, take Mkdocs and its dependencies and put them into a requirements.txt
file:
pip freeze > requirements.txt
Before you continue
All of the framework guides assume you already have a fundamental understanding of Git. If you are new to Git, refer to this summarized Git handbook on how to set up Git on your local machine.
If you clone with SSH, you must generate SSH keys on each computer you use to push or pull from GitHub.
Refer to the GitHub documentation and Git documentation for more information.
Create a GitHub repository
Create a new GitHub repository by visiting repo.new. After creating a new repository, prepare and push your local application to GitHub by running the following commands in your terminal:
$ git init
$ git remote add origin https://github.com/<your-gh-username>/<repository-name>
$ git add .
$ git commit -m "Initial commit"
$ git branch -M main
$ git push -u origin main
You have successfully created a GitHub repository and pushed your Mkdocs project to that repository.
Deploy with Cloudflare Pages
Deploy your site to Pages:
- Log in to the Cloudflare dashboard.
- In Account Home, select Pages > Create a project.
- Select the new GitHub repository that you created and, in the Set up builds and deployments section, select Mkdocs as your Framework preset. Your selection will provide the following information:
Configuration option | Value |
---|---|
Production branch | main |
Build command | mkdocs build |
Build directory | site |
- Go to Environment variables (advanced) > Add variable > and add the variable
PYTHON_VERSION
with a value of3.7
.
After deploying your site, you will receive a unique subdomain for your project on *.pages.dev
.
Every time you commit new code to your Mkdocs site, Cloudflare Pages will automatically rebuild your project and deploy it. You will also get access to preview deployments on new pull requests and be able to preview how changes to your site look before deploying them to production.
For the complete guide to deploying your first site to Cloudflare Pages, refer to the Get started guide.
Learn more
By completing this guide, you have successfully deployed your Mkdocs site to Cloudflare Pages. To get started with other frameworks, refer to the list of Framework guides.