基于docker的hexo博客系统

来源:互联网 发布:js时间戳计算时间差 编辑:程序博客网 时间:2024/05/14 17:30

阿里云地址:https://dev.aliyun.com/detail.html?spm=5176.1972343.2.52.UlIt1y&repoId=32124

目的是为了每一次重装系统不需要重新安装hexo的环境,下个docker就可以用了。

下载容器

 docker pull registry.cn-hangzhou.aliyuncs.com/wuhulala/website

启动容器

docker run -p 4000:4000 --name website -v G:/data:/opt/website wuhulala/website

-v 是指定宿主机的某个硬盘位置和容器里的位置关联。G:/data:/opt/website表示G盘的data文件夹对应容器中的/opt/website 文件夹。

进入内部

docker attach website

初始化环境

hexo init

现在G:/data中已经有了hexo的内容

生成网站内容

hexo g

预览

hexo s

在宿主机的浏览器上输入 127.0.0.1:4000

如果像上面相当于每一次都要进入容器,这很麻烦。

我们可以为每一个hexo命令的开一个服务

初始化命令:

docker run --name hexo-init -v G:/data:/opt/website wuhulala/website hexo init

一下三个全部需要hexo-init执行完

开一个监听修改生成服务

 docker run --name hexo-g  --volumes-from hexo-init wuhulala/website hexo g

开一个部署服务

 docker run --name hexo-d  --volumes-from hexo-init wuhulala/website hexo d  -g

开一个服务器服务(访问127.0.0.1:5000)

docker run --name hexo-s -p 5000:4000 -–volumes-from hexo-init wuhulala/website hexo s

这里写图片描述

还有一个更好的方法进行预览,不需要每一次都重新关闭和开启server

就是把我们经过hexo generator生成的文件夹里面的public 与nginx对应的发布文件夹连起来

docker run -d -p 10080:80 --name website -v G:/data/public:/var/www/html/website:ro wuhulala/nginx nginx

附上Dokcerfile

FROM node:latestMAINTAINER XueAohui xueaohui_com@163.comENV REFRESHED_AT 2017-03-26VOLUME ["/opt/website"]RUN npm install -g hexoRUN hexo init /opt/websiteWORKDIR /opt/websiteEXPOSE 4000
0 0
原创粉丝点击