Convert web articles (blogs, news, docs) to clean Markdown — powered by Docker.
This image bundles omni-article-markdown (
mdcli) and all official plugins. No local Python environment required.
docker pull caol64/omnimddocker run --rm caol64/omnimd --helpConvert a web page to Markdown and print to stdout:
docker run --rm caol64/omnimd https://example.com/articleSave result to current directory:
docker run --rm \
-v $(pwd):/output \
caol64/omnimd \
https://example.com/article -s /outputSome sites (Zhihu, Toutiao, etc.) require cookies or login state.
Mount a local directory to persist data:
docker run --rm \
-v ~/.ommimd:/root/.ommimd \
caol64/omnimd \
https://zhuanlan.zhihu.com/p/1915735485801828475What this does:
| Location | Purpose |
|---|---|
/root/.ommimd |
Stores cookies, browser state |
~/.ommimd |
Persistent storage on host |
All official plugins are pre-installed in this image.
Supported sites include:
- Medium
- Zhihu (requires cookie)
- WeChat Official Accounts
- Toutiao
- Freedium
- Apple Developer Docs
- Cloudflare Blog
- InfoQ, CSDN, Juejin, Yuque, etc.
No extra setup required.
- Base image:
python:3.x-alpine - Entrypoint:
mdcli - Plugins: all official plugins included
- Architecture:
linux/amd64,linux/arm64
docker run --rm caol64/omnimd https://example.com/article > article.md- GitHub: https://github.com/caol64/omni-article-markdown
- PyPI: https://pypi.org/project/omni-article-markdown/
- Issues: https://github.com/caol64/omni-article-markdown/issues
MIT License
For frequent usage, consider creating an alias:
alias mdcli='docker run --rm -v ~/.ommimd:/root/.ommimd caol64/omnimd'Then use it like a native CLI:
mdcli https://example.com