定制网站制作平台,印刷设计东莞网站建设,网站建设和管理自查报告,广州万户网络技术有限公司怎么样使用 docker 部署 mdniceIntro最近 mdnice 的在线版使用开始需要登录才能访问#xff0c;一方面我觉得我的文章会被保存的他们的服务器上#xff0c;使用他们的平台就能轻松拿到很多文章的数据#xff0c;他们甚至是可以直接拿到 markdown 原始内容去别的平台分享转发#… 使用 docker 部署 mdniceIntro最近 mdnice 的在线版使用开始需要登录才能访问一方面我觉得我的文章会被保存的他们的服务器上使用他们的平台就能轻松拿到很多文章的数据他们甚至是可以直接拿到 markdown 原始内容去别的平台分享转发另外一方面也是觉得以后如果加了别的限制就没有办法使用所以还是打算自己部署一下好了前两天看到“老法师昭昭”发的一个私有化部署的教程可以参考前两天转发的文章 绕开登录限制,私有化部署Markdown转公众号格式神器mdnice 感觉挺好的与我的想法不谋而合但是我的应用都是 docker 部署的不想再通过文件的形式拷来拷去的不方便移植部署也不方便于是就打算打包一个 docker 镜像来用Dockermdnice 本身并没有提供 docker 的支持于是我 Fork 了一份增加了 docker 的支持为了方便别的小伙伴做自定义和参考给 mdnice 提了一个 PR可以参考https://github.com/mdnice/markdown-nice/pull/268Dockerfile 如下FROM node:12-alpine AS builder
WORKDIR /app# install and cache app dependencies
COPY package.json .
RUN yarnCOPY . .
RUN yarn run buildFROM nginx:alpineCOPY --frombuilder /app/build /usr/share/nginx/html
EXPOSE 80
CMD [nginx, -g, daemon off;]
Dockerfile 本身并不复杂使用 node 编译项目拿到打包后的静态资源放在 nginx 目录下由 nginx 对外提供服务这里的 Dockerfile 有一些小技巧可以参考在 build 的时候先拷贝 package.json 进行 npm 包的还原这样如果 package.json 不发生变化就会使用镜像缓存就不会重新还原 npm 包了打包 docker 镜像有了 dockerfile打包 docker 镜像就是一个很简单的事情了docker build -t mdnice .
就可以打包一个镜像名字是 mdnice 的 docker 镜像了使用 docker 部署有了 docker 镜像就可以比较简单的使用可以使用下面的命令进行部署docker run -d --name mdnice -p 9000:80 mdnice
如果不想自己 build docker 镜像可以使用我 build 好的镜像docker run -d --name mdnice -p 9000:80 weihanli/mdnice9000 是我随便定义的一个端口号你可以根据需要修改成自己想要的端口号部署效果如下More如果你想进一步修改源代码就要修改后进行再进行打包了希望能够帮到你~~Referenceshttps://github.com/mdnice/markdown-nice/pull/268