项目场景:
这个文档的官方地址点击此处
项目中要求,通过mkdoc作为项目的使用文档手册,界面优美,只需要会写markdown文档,就能生成一个项目单独启动,很神奇,这个mkdoc系列中,最好的主题应该是material它了,今天看下这个问题~~
问题描述
关于这个插件安装的步骤 [插件安装](squidfunk.github.io/mkdocs-
material/reference/images/?h=images#configuration)
我在我的服务器中,明明已经通过pip安装了 mkdocs-glightbox,但是更改mkdocs.yml 配置文件加载插件,内容如下
plugins:
- glightbox
报错为-glightbox插件未安装
通过pip list 查看已经安装的列表中
该插件赫然在列,但是为什么还是提示未安装呢?
原因分析:
最开始通过命令安装插件: pip install mkdocs-glightbox
其实会提示一些内容,意思是按照位置不对,然后可以自己选择一个插件安装位置,也就是在你要放入.md文件的所在文件夹就行了,此种办法也试过了,依然不行…还是同样的错误提示,插件未安装,到底是哪里出了问题??
解决方案:
仔细排查,发现首页有个位置,点开之后
`
Material for MkDocs only bundles selected plugins in order to keep the size of the official image small. If the plugin you want to use is not included, create a new Dockerfile and extend the official Docker image:
FROM squidfunk/mkdocs-material
RUN pip install ...
Next, you can build the image with the following command:
docker build -t squidfunk/mkdocs-material .
The new image can be used exactly like the official image.
大概意思是,可以对于已经下载的镜像,加入你想要的插件,然后进行重新打包成新的镜像,其中
FROM squidfunk/mkdocs-material
RUN pip install ...
这个就是你想要附加的插件,那么我们如下操作;
第一步
对于之前的mkdoc容器,镜像 都停止,然后删除,重新下载一个新的镜像文件
// 重新下载一个新的镜像文件
docker pull squidfunk/mkdocs-material
第二步
在你要作为项目文档所在的文件夹内创建一个Dockerfile 文件,内容就是上面加载额外插件
FROM squidfunk/mkdocs-material
RUN pip install mkdocs-glightbox
第三步
运行命令,将原镜像文件,通过Dockerfile 重新编译为另一个加载了插件的镜像文件
docker build -t squidfunk/ht-mkdocs-material .
1 其中 这个命令最后有一个 . 这个意思是,在当前文件夹找Dockerfile ;
2 原镜像名称为 squidfunk/mkdocs-material 重新编译后镜像名称为 squidfunk/ht-mkdocs-material
第二次重新build的镜像名称一定要不一样,否则会有两个同名的镜像,无法区分;
3 重新build后,会有两个镜像 一个是 squidfunk/mkdocs-material 另一个是squidfunk/ht-mkdocs-
material,第一个镜像无法删除,因为第二个镜像依赖了它,第二个是你要用的,所以都保留就好
第四步
启动镜像,用第二个加载了插件的镜像启动
docker run -d --rm -it -p 8000:8000 -v ${PWD}:/docs squidfunk/ht-mkdocs-material
这样就不报错了,有了这个插件,就实现了文档中图片放大的效果;
本文转自 jimolvxing.blog.csdn.net/article/det…,如有侵权,请联系删除。