授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道
前言
现代化开发都是团队开发,大家都知道团队平时代码管理是一件比较麻烦的事情,如果放到公共服务商又害怕被泄露,况且一个配置文件就会泄露整个项目的信息,之前我们一直用免费的GitLab
跑,但是老是被强,一但被强项目进度就受到影响,于是我们后面开始自建git
服务器,就在这时候,看到AWS
的Lightsai
可以支持一键自建Git服务,于是今天依托AWS
平台来测试一下效果如何!
这正好能解决我们小组长期以来的代码版本管理痛点。据我初步了解,Lightsail
是亚马逊针对个人和小队开发设计的在线服务器产品,使用简单成本低。
实验大纲
- 创建实例
- 部署GitLab
- 在GitLab中创建项目
- 配置SSH
- 进行开发团队日常操作测试
提示:以下是本篇文章正文内容,下面案例可供参考
一、Lightsail介绍
Lightsail
是AWS
推出的面对中小及个人开发者推出的产品,可以快速创建虚拟主机实例, Lightsail
的设计理念很有前瞻性。它将基础架构管理都内置于平台,从根本上简化了用户体验。只需几个鼠标点击,就可以方便快速地部署和管理虚拟主机实例。这在传统IaaS
服务中可是非常新颖的。
而且Lightsail
深入剖析了大多数个人和小团队通常会面临的痛点,针对性地进行优化。比如预配置了常用的运行环境,一键化的网络设置,以及按使用量后付费等。这无疑大大降低了用户的学习成本和上手难度。
不仅如此,它与AWS
其他Service
深度集成,利用云原生的经济规模实施了更优的价格策略。同样的配置和性能,Lightsail
给出的报价比同品牌传统VPS
低很多。这对个人和小团队来说利好得多。
二、实例创建
登录AWS
账号控制台后,进入Lightsail
的控制台,可以从侧边栏搜索进入,对于英文不太熟悉的朋友可以在左下角设置为中文
整个界面是支持多国语言的,所以说aws
在全球的服务都很不错,我们点击创建实例进入创建页面
- 选择实例区域
这个是跟我们的业务地域相关的,服务哪个地方客户就选哪个地方就可以,这里我随便选了一个首尔,这里还可以发现首尔也可以有几个可用区,这是为了更好地灾难备份
操作系统可以选择 Windows
和Linux
,所以不用担心不会用,这里AWS
给我提供了很多预装的应用可以选择,比方说:Node
、LAMP
、Wordpress
等,很方便,如果有需要搭建博客的也可以快速构建一个,这里我需要一个gitlab
,所以直接选择gitlab ce16.5.1
- 选择实例配置
这里有很多种配置来适应业务场景,如果个人的话可以直接选择前3个月免费的,白嫖一下,我就是
全部选择好后,直接点击创建就可以在实例列表看到咱们的服务器实例了
三、配置静态IP
默认的实例分配的 IPv4
地址是会变动的,每次停止启动实例都会重新更改,如果我们的服务宕机或者必要情况需要重启,那么我们的开发就会受到影响,所以一般我们会绑定一个固定的 IPv4
地址,点击附加静态IP
- 设置静态IP标识
这里就会发现我们的静态IP已经绑定上实例了,无论如何启停都可以保持IP不变
四、测试GitLab服务
我们输入我们的静态IP地址访问一下这个GitLab
,如下状态就是正常运转了,有些小伙伴可能刚创建就去访问发现访问失败,那是因为服务也需要启动时间,稍等1分钟左右就差不多了
我们发现提示需要登录,但是没有账号密码去哪弄呢?这个是AWS在创建实例时就会在机器上创建好的,只需要我们通过SSH连接上服务器,然后去查看密码文件就可以获取了
- 查看默认密码
cat $HOME/bitnami_application_password
GitLab这里默认账号名是 root,所以获得的账号密码为:
- 账号:root
- 密码:E8zq8HqpfPL=
我们登录后会进入到GitLab
的主页面,这个时候就可以正常使用Git
服务了
五、创建项目
我们平时开发就可以在这里进行项目创建,这里我选择从模板里创建一个项目进行测试
选择模板,输入项目名称和标识等信息,然后点击创建项目
创建后会自动跳转到项目的首页
这个时候我们通过本地 SSH
协议拉取发现还需要账号密码,这是因为我们还没有配置好SSH
六、配置SSH
- 运行命令生成SSH公钥和私钥(如果已经有的不用生成)
ssh-keygen.exe
执行命令后会在用户的目录下 .ssh
文件夹中有 id_rsa.pub
,这是我们的公钥,把它配置到我们的gitlab
中
- 增加
SSH-Key
- 重新克隆项目
发现已经不用输入密码就可以拉取下来了
这个时候我们来测试一下日常的 pull
、 push
等动作是否正常
- 创建一个新文件并写入内容
touch 1.txt
echo first_comment > 1.txt
- 推送代码
git add -A
git commit -m "init"
git push
已经成功推送到我们自建的服务上了
我们再来尝试一下在线修改,是否能够被本地拉取到
- 执行拉取操作 git pull
整个GitLab
服务都可以正常运转,可以看到,我1-2分钟就创建好了私有的Git
服务,如果是平时我们自己操作,估计没个1小时搞不定,Lightsail
还是非常高效的
总结
总体来说,此次基于Lightsail
成功构建自建Git
仓库可以说圆满达成任务目的之外,也解决了我们寸步难行的项目管理问题。除了Lightsail
性能稳定可靠外,它便捷简单的管理界面也给我们带来许多学习乐趣。这无疑令我们应用云计算的思路更深入了一步。感谢亚马逊云提供这样一个实践平台,也希望能通过此篇文章与大家一起学习交流。未来还会有更多意想不到的应用,请继续关注!