从0到1搭建网站:云服务器生产环境与CI/CD工具全攻略

在云计算时代,搭建云服务器和配置相关工具既关系到工作效率,又与成本紧密相连,其中蕴藏着许多实用技巧。

云服务器的选择

从0到1搭建网站:云服务器生产环境与CI/CD工具全攻略插图

现在用信用卡在AWS和GCP上可以优惠租用服务器,国内云平台凭借学生身份也能以较低价格租用。国外或香港的服务器价格稍高,但可以借助梯子使用。国内机房建议选择靠近目标用户的,比如我个人的网站就使用阿里云的1核2G、1M带宽服务器,这样网络延迟会比较低。不同地区有不同的价格和优势,大家可以根据自己的需求来选择。云服务器让硬件搭建变得简单,也节省了不少成本。

域名的考量

在很多情况下,拥有一个域名是很有用的,比如在微信公众号或HTTPS网站中。个人网站申请域名相对容易,许多云平台都提供购买域名和设置映射的服务。国内也提供了多样的域名选项。然而,需留意,若在国内申请域名或使用国内服务器,必须进行备案。例如,在阿里云购买域名后,可以直接上传资料进行备案。备案过程可能耗时较长,因此建议尽早申请,以免影响网站今后的使用,比如可能导致无法正常访问等问题。

操作系统选定

Linux系统普遍适用,不同版本对服务器搭建影响有限。在搭建过程中,操作系统主要提供基础支持,无需过分关注不同版本间的细微差异。应将注意力集中在其他功能的开发上。确保满足基本运行需求即可,比如支持安装后续软件等基本功能。

sudo apt-get install docker

服务器登录设置

docker run -d -p 9000:9000 
--privileged --restart=always 
-v /var/run/docker.sock:/var/run/docker.sock 
--name portainer portainer/portainer

服务器配置完毕后,将本地的ssh公钥上传至服务器是必要的,这样做能实现无需密码即可登录服务器,极大地方便了操作。虽然这看似是件小事,实则意义重大。考虑到服务器后续可能需要频繁操作,每次都输入密码确实很繁琐。在公司中,多个开发人员可能需要共同管理服务器,这样的设置能有效提高工作效率。

从0到1搭建网站:云服务器生产环境与CI/CD工具全攻略插图1

gogs的安装与配置

sudo docker run -d 
--name=gogs --restart=always 
-p 10022:22 -p 10080:3000 
gogs/gogs

安装完基础软件,启动nginx实例。浏览器测试访问无误后,再进行gogs的初始化。端口和URL的配置要留意,然后添加ssh公钥,创建项目。这是生产环境搭建的关键环节,任何小疏忽都可能影响后续功能,因此操作需谨慎。

从0到1搭建网站:云服务器生产环境与CI/CD工具全攻略插图2

CI/CD流程配置

在项目主目录下,建立名为“.drone.yml”的文件,可以用来设置drone的持续集成/持续部署流程。代码提交后,流程会自动启动。此外,还能设立任务以执行构建和远程部署。资源充足时,建议使用本地资源。同时,需留意机器版本与drone版本需相匹配,若默认最高版本不兼容低版本机器,则需进行修改。具体配置信息,可在开源项目代码中查阅。掌握这些流程后,基本可以自行搭建一个基于云服务器的生产环境。

docker run 
-e DRONE_AGENTS_ENABLED=true 
-e DRONE_GOGS_SERVER=http://yasinshaw.com:10080 
-e DRONE_RPC_SECRET=your_drone_secret 
-e DRONE_SERVER_HOST=yasinshaw.com:20080 
-e DRONE_SERVER_PROTO=http 
-e DRONE_USER_CREATE=username:yasin,admin:true 
-p 20080:80 
-p 20443:443 
--restart=always 
--detach=true 
--name=drone 
drone/drone:1

阅读完这篇文章,你是否有兴趣动手搭建自己的云服务器生产环境?欢迎点赞、转发,并在评论区分享你的想法。

THE END