1

目前我们正在使用 docker-compose 文件创建一个 localstack 容器,专门用于使用 S3 服务。

我们已将此行添加到创建 S3 存储桶的环境中 - AMAZONPROPERTIES.BUCKETNAME=bucketname

然后,我们使用 Java 代码中的实用程序创建了所需的任何其他存储桶。

但是,最好使用我们的 docker-compose 文件一开始就自动创建所有需要的存储桶。是否有可能做到这一点?

4

1 回答 1

0

不确定这是否是最好的方法,但它确实有效。

我们现在在 bash 脚本中运行 docker-compose.yml,等待片刻以确保服务正在运行,然后在 docker 容器中调用 curl 命令来创建另一个 S3 存储桶。

#!/bin/bash
docker-compose -f docker-compose.yml up -d --build
echo "Waiting for Services to be ready"
sleep 20
docker exec -it general-files_general-files_1 curl -X POST 
https://localhost:7777/createBucket -F bucketName=bucketname2 --insecure
echo
echo "S3 buckets available are: "
docker exec -it general-files_general-files_1 curl -X GET 
https://localhost:7777/listBuckets --insecure
echo
echo "Services are ready for use" 
于 2019-06-06T13:26:57.977 回答