首先这是篇水文:),仅记录下这2天使用docker的情况。实际上和docker没什么关系,静态博客嘛,生成之后上传到vps然后上面放个nginx就好了,没什么需要操心的

步骤如下(服务端):

  1. 参照docker官方文档安装上docker,最耗时的就是这一步了,因为docker虽然发展几年了,可是还是处于不断完善中。连安装方式都不是简单的apt-get install xx搞定(另外现在docker支持的最低版本号是3.1,意味着openvz是无法使用的,因为openvz的内核版本号是2.6.32,且无法升级)
  2. 在你存放静态文件的目录下执行
    1
    docker run -d --restart=always -p 80:80 -v `pwd`:/usr/share/nginx/html nginx

解释一下:

  • d参数表示以detach,以后台进程形式一直运行
  • --restart=always当容器因为异常退出甚至被reboot重启操作后无限自动重启
  • p参数,用过vagrant的比较好理解,虚拟机都有这么个玩意儿。端口映射
  • v参数。vagrant也有这个概念。文件夹共享
  • 至于共享的目录,那是因为容器内nginx默认的配置既如此。默认文件位置为/usr/share/nginx/html。这个地方前后的地址必须都是绝对地址。感觉要是能用相对就好了
  • 如果你要去容器内看看它nginx的配置啥的执行(exit退出)docker run -it --restart=always -p 80:80 -v `pwd`:/usr/share/nginx/html nginx /bin/bash

至于客户端,用rsync同步就好了。我用的是hexo静态博客生成器。使用https://github.com/hexojs/hexo-deployer-rsync这个配合ssh config配置一下就好了。很简单O_o

另外目前本人将这个静态博客放在了3个地方:

  1. hostker使用git部署https://www.zoulei.net
  2. github pages使用git部署https://ficapy.github.io
  3. 128M vps rsync同步https://www.ficapy.com