目录
- 什么是Localstack?
- Localstack在CI-CD中的作用是什么?
- 为什么要使用LocalStack?
- 如何使用Localstack?
- 运行Localstack的方法
- 通过CLI访问基础设施
- 总结
- 参考资料
阅读时间: 3 分钟
什么是Localstack?
Localstack是一个功能齐全的本地云堆栈。它有助于在本地开发和测试云和无服务应用程序。
LocalStack是云服务的一个镜像。第二,唯一的区别是你在本地运行。它是一个开发云应用的嘲弄框架。第三,它为我们提供了一个与云服务相同功能的环境。
Localstack在CI-CD中的作用是什么?
让我们假设下面的用例:-
- 首先,一个开发者开发了一个需要云服务的应用程序。
- 其次,它在一个本地容器中提供所有需要的云服务。
- 它适合于CI环境。当变化被推送到环境中时,就用它进行测试。最后,一旦它的服务一切正常,那么它将进一步与AWS进行配置。
为什么使用LocalStack
- 它有助于运行应用程序而不需要连接到aws。
- 使用LocalStack可以使人们更专注于开发而不是配置aws。
- 在实际部署到aws之前,所有合适的错误测试都可以在本地完成。
- 可以与CI CD集成
- 在插件的帮助下,支持各种CI工具。
如何使用Localstack?
它是一个Python应用程序,以HTTP请求的形式运行在某个端口。
前提条件
- 在系统中安装Python
- 管道
- 码头程序
运行Localstack的方法
- 作为一个docker容器
- 作为一个应用程序
用python运行localstack
首先要安装它,运行以下命令
pip install localstack
进一步通过上述命令将其安装到系统中。
输出
Localstack启动
要检查容器,只需输入以下命令
docker ps
输出
所以它在python docker conatiner下运行。
检查localstack下的各种服务
要检查它所提供的各种服务,请运行下面的命令。
localstack status services
输出
localstack下的各种服务
通过CLI访问基础设施
首先,你可以在本地访问基础设施。要做到这一点,使用下面的命令。
列出数据流
aws --endpoint-url=http://localhost:4566 kinesis list-streams
端点是我们的localstack服务的端口。上述命令用于列出本地基础设施的流。此外,我们没有任何流,所以输出将是空的。
安装 localstack 的本地客户端
要使用它,你需要安装aws-local cli。此外,这有助于在不使用端点网址的情况下运行命令。
要安装cli,请运行下面的命令。
pip install awscli-local
一旦安装,就可以开始与各种服务进行交互。
从localstack创建sqs que
首先从它创建sqs服务,运行下面的命令。
awslocal sqs create-queue --queue-name sample-queue
此外,上述命令创建了一个名为sample-queue的队列。
输出
该队列是用url创建的。现在这个url可以被用于sqs的服务中。
在localstack上创建和列出桶。
正如我们已经知道的,它是云服务的一个镜像。所以让我们创建一个s3 bucket,并在一个特定的区域列出它。
要在其中创建s3 bucket,请运行以下命令。
awslocal s3api create-bucket --bucket rishi --region us-east-1
在上面的命令中使用了awslocal cli.名为rishi的桶被创建在us-east-1区域。
此外,要列出桶,运行下面的命令。
awslocal s3api list-buckets
上面的博客将列出所有创建的bucket。
输出
awslocal bucket creation
进一步说,就像上面所说的,还有很多互动可以做。所有提到的服务都可以被创建和销毁。
总结
最后,它节省了在云端创建服务的时间。所有的测试都可以在本地完成,你可以很容易地看到你所创建的服务是否正常工作,总之,我们在本地测试越多,我们使用的AWS服务就越少。
参考资料
leviwheatcroft.github.io/selfhosted-…