热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

5分钟搭建基于Docker的静态服务器

现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D


现在比较流行使用静态网站生成器来搭建网站,博客/产品着陆页/微信转发页面等。


但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。


使用DockerWeb,只需5分钟就能搭建一个基于Docker Container的Nginx静态网页服务器,并通过Github或Bitbucket就能自动更新部署。甚至不需要对Docker或者Nginx有任何了解,只要有点点Linux服务器的相关知识以及Git的简单操作即可。


本站也转移到了DockerWeb,现在管理维护真是方便太多了。



https://github.com/antscript/DockerWeb


What is DockerWeb ?


DockerWeb是一个静态网站搭建及部署工具


使用DockerWeb可以非常方便的在服务器/VPS/云主机上部署静态网站


并且可以通过Github或Bitbucket对网站进行自动更新


功能特点




  • 使用Docker Container运行,易于维护,备份和迁移都极其方便


  • 使用非常简单 通过DockerWeb五分钟搭建一个静态网站


  • 可通过Github或Bitbucket的webhook自动部署更新


用法





  • Step 0 :Install Docker and Git



    Docker : https://docs.docker.com/engine/installation/



    Git : https://git-scm.com/book/en/v2/Getting-Started-Installing-Git





  • Step 1 :Fork DockerWeb 并克隆到本地


    如果是Bitbucket , 可直接从Github导入





  • Step 2 :配置SSH (Bitbucket需要)


    复制本机或新生成一对id_rsa和id_rsa.pub到服务器的/root/.ssh/目录下





  • Step 3 :配置HTTPS (如果需要https访问请配置)


    复制ssl.crt和ssl.key到服务器





  • Step 4 :编辑setup/config.sh为适合你的配置




注意:如果服务器上要部署多个网站,multi_site要配置为true





  • Step 5 :将仓库push到Github或Bitbucket





  • Step 6 :添加webhook用于自动部署更新




#Github
Setting -> Webhooks & services -> add webhook
Payload URL : http(s)://yourdomain.com:9000/hooks/your_webhook_id

#Bitbucket
Setting -> Webhooks -> Add webhook
Title : title you want
URL : http(s)://yourdomain.com:9000/hooks/your_webhook_id




  • Step 7 :登陆服务器,克隆你提交的仓库并运行setup/setup.sh





  • Step 8 :访问并测试你的网站





  • Step 9 :如果服务器上部署了多个网站,运行multi-web中的init.sh


    部署新网站后需要重新运行init.sh





  • Step 10 :使用Github或者Bitbucket进行部署更新




视频演示





  • 通过DockerWeb五分钟搭建一个静态网站 :



    Youtube : https://www.youtube.com/watch?v=VQmeIzExRco


    更新↓↓↓


    DockerWeb:部署多个网站


    DockerWeb现在支持自动部署多个网站在同一台服务器,说明文档如下:


    管理和维护多个网站一种方法是直接创建多个仓库,将所有文件拷贝到仓库中,分别用单个网站的方式进行部署。还有另一种更优雅的管理多个网站的方式是使用仓库的分支:



    • 为不同网站创建分支,在对应分支上进行网站管理及维护

    • 为不同网站创建有不同id的webhook

    • 通过切换不同分支对不同网站进行部署






推荐阅读
  • 对象自省自省在计算机编程领域里,是指在运行时判断一个对象的类型和能力。dir能够返回一个列表,列举了一个对象所拥有的属性和方法。my_list[ ... [详细]
  • 本文作者分享了在阿里巴巴获得实习offer的经历,包括五轮面试的详细内容和经验总结。其中四轮为技术面试,一轮为HR面试,涵盖了大量的Java技术和项目实践经验。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 在高并发需求的C++项目中,我们最初选择了JsonCpp进行JSON解析和序列化。然而,在处理大数据量时,JsonCpp频繁抛出异常,尤其是在多线程环境下问题更为突出。通过分析发现,旧版本的JsonCpp存在多线程安全性和性能瓶颈。经过评估,我们最终选择了RapidJSON作为替代方案,并实现了显著的性能提升。 ... [详细]
  • yikesnews第11期:微软Office两个0day和一个提权0day
    点击阅读原文可点击链接根据法国大选被黑客干扰,发送了带漏洞的文档Trumps_Attack_on_Syria_English.docx而此漏洞与ESET&FireEy ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 使用JS、HTML5和C3创建自定义弹出窗口
    本文介绍如何结合JavaScript、HTML5和C3.js来实现一个功能丰富的自定义弹出窗口。通过具体的代码示例,详细讲解了实现过程中的关键步骤和技术要点。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 本文探讨了如何通过一系列技术手段提升Spring Boot项目的并发处理能力,解决生产环境中因慢请求导致的系统性能下降问题。 ... [详细]
  • 本文档汇总了Python编程的基础与高级面试题目,涵盖语言特性、数据结构、算法以及Web开发等多个方面,旨在帮助开发者全面掌握Python核心知识。 ... [详细]
  • 本文介绍如何在Laravel框架中集成微信支付功能,包括如何配置微信支付环境、处理支付请求及接收支付回调等关键步骤。 ... [详细]
  • 微信小程序中实现位置获取的全面指南
    本文详细介绍了如何在微信小程序中实现地理位置的获取,包括通过微信官方API和腾讯地图API两种方式。文中不仅涵盖了必要的准备工作,如申请开发者密钥、下载并配置SDK等,还提供了处理用户授权及位置信息获取的具体代码示例。 ... [详细]
author-avatar
朱小小喵喵_972
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有