Hi Robert, Floci looks very promising. I agree we should try it out. Compared to LocalStack, it's 100% free, and compared to Ministack, it also covers Azure and GCS, so it seems really a good fit for our testing use cases.
Thanks, Alex On Tue, Jun 30, 2026 at 8:25 AM Jean-Baptiste Onofré <[email protected]> wrote: > > Hi Robert, > > Thanks for sharing this. I wasn't familiar with Floci, but it looks very > interesting. > > Since it is MIT licensed, it’s a good fit from a legal standpoint. It also > seems like a great candidate for our integration tests, especially given > that it functions more as an AWS emulator than just an object store. > > Regards, > JB > > > On Mon, Jun 29, 2026 at 7:47 PM Robert Stupp <[email protected]> wrote: > > > Reviving this thread with one more option, specifically for the test side. > > > > I agree with the distinction made earlier in the thread: the best backend > > for getting-started examples and the best backend for integration tests do > > not have to be the same thing. > > > > For tests that currently rely on MinIO because they need S3 plus STS/IAM, I > > think Floci [1] [2] is worth evaluating as a replacement: > > > > Unlike RustFS, Garage, or other S3-compatible stores, Floci is an AWS > > emulator rather than only an object-store implementation. > > That means the interesting surface for these tests is not just S3 CRUD, but > > S3 together with IAM, STS, session credentials, policy evaluation, KMS, and > > Secrets Manager. > > That seems closer to what Polaris needs for credential vending and related > > cloud integration coverage. > > > > I would not suggest switching everything in one step. A safer migration > > plan could be: > > > > 1. Add a small Floci-backed testcontainer/helper next to the existing MinIO > > helper. > > 2. Port one or two MinIO-based credential-vending tests to Floci without > > removing the MinIO tests. > > 3. Explicitly check the behavior we care about: > > - STS AssumeRole works with vended credentials > > - session policies are enforced > > - denied S3 operations fail where expected > > - path-style and virtual-host-style access behavior is understood > > - existing MinIO-specific workarounds, such as KMS limitations, are > > either > > still needed or can be removed for Floci > > 4. If the coverage is at least equivalent, migrate the remaining STS/IAM > > MinIO tests. > > 5. Only then remove the MinIO testcontainer usage that is no longer needed. > > > > There may also be a broader testing upside if the AWS spike works. > > The Floci suite is not limited to AWS: > > - floci-gcp [3] claims Cloud Storage, IAM, Secret Manager, and Cloud KMS > > support, and > > - floci-az [4] claims Blob Storage and Key Vault support. > > > > All three advertise very fast startup / low idle memory, so this could > > reduce test duration versus heavier service containers. > > > > I would keep that as a follow-up benefit rather than the first migration > > goal, though. > > For any later Azure/GCP migration, we should make provider-specific auth > > part of the spike rather than assuming parity: > > > > - AWS: STS AssumeRole, session policies, IAM allow/deny behavior, > > KMS/Secrets Manager where relevant. > > - GCP: Cloud Storage plus IAM, Secret Manager, and KMS behavior used by > > Polaris. > > - Azure: Blob Storage plus Key Vault, and explicit SAS-token coverage > > because > > SAS support is not prominent in the top-level floci-az docs. > > > > This would keep the quickstart discussion separate. > > Ozone may still be the better long-term fit for examples if/when its STS > > story is complete enough, especially because it is an ASF project. > > But for CI/integration tests that need an AWS-shaped local service, Floci > > seems like a strong candidate to evaluate. > > > > Robert > > > > [1] https://floci.io/ > > [2] https://github.com/floci-io/floci > > [3] https://github.com/floci-io/floci-gcp > > [4] https://github.com/floci-io/floci-az > > > > > > On Tue, Jan 27, 2026 at 9:05 AM Yong Zheng <[email protected]> > > wrote: > > > > > sounds good. > > > > > > Thanks, > > > Yong > > > > > > > On Jan 26, 2026, at 9:03 PM, Yufei Gu <[email protected]> wrote: > > > > > > > > Thanks a lot for digging deep on it, Yong! Given that virtual host > > > style is > > > > the default for AWS s3[1], maybe we will still need it for s3 > > compatible > > > > storage in the long term. I think we could work with the RustFS > > community > > > > to get it resolved, while gradually migrating from MinIO to RustFS for > > > > tests. > > > > > > > > 1. > > > > > > > > > https://github.com/apache/polaris/blob/0b54f7046295ff19d434f9f0bd47b0b612be51a5/spec/polaris-management-service.yml#L1146 > > > > > > > > Yufei > > > > > > > > > > > >> On Mon, Jan 26, 2026 at 7:05 AM Yong Zheng <[email protected]> wrote: > > > >> > > > >> Hello, > > > >> > > > >> So in MinioContainer.java, we have following: > > > >> ``` > > > >> private S3Client createS3Client() { > > > >> return S3Client.builder() > > > >> .httpClientBuilder(UrlConnectionHttpClient.builder()) > > > >> .applyMutation(builder -> > > > >> builder.endpointOverride(URI.create(s3endpoint()))) > > > >> .applyMutation(builder -> region.ifPresent(r -> > > > >> builder.region(Region.of(r)))) > > > >> // .serviceConfiguration(s3Configuration(s3PathStyleAccess, > > > >> s3UseArnRegionEnabled)) > > > >> // credentialsProvider(s3AccessKeyId, s3SecretAccessKey, > > > >> s3SessionToken) > > > >> .credentialsProvider( > > > >> > > > >> > > StaticCredentialsProvider.create(AwsBasicCredentials.create(accessKey(), > > > >> secretKey()))) > > > >> .build(); > > > >> } > > > >> ``` > > > >> > > > >> So we are not enforcing one or the other for access style which it > > will > > > be > > > >> default (which if virtual host style access based on what i recalled). > > > >> > > > >> Thus, with simple changes I mentioned above, the test cases with path > > > >> style will work (PolarisRestCatalogMinIOIT.java) as we are setting > > > >> setPathStyleAccess to true implicitly: > > > >> ``` > > > >> protected StorageConfigInfo getStorageConfigInfo() { > > > >> AwsStorageConfigInfo.Builder storageConfig = > > > >> AwsStorageConfigInfo.builder() > > > >> .setStorageType(StorageConfigInfo.StorageTypeEnum.S3) > > > >> .setPathStyleAccess(true) > > > >> .setEndpoint(endpoint) > > > >> .setAllowedLocations(List.of(storageBase.toString())); > > > >> > > > >> return storageConfig.build(); > > > >> } > > > >> ``` > > > >> > > > >> The problem is RestCatalogMinIOSpecialIT.java where we have couple > > place > > > >> where we are testing for virtual host style access such as following: > > > >> ``` > > > >> @ParameterizedTest > > > >> @CsvSource("true, true,") > > > >> @CsvSource("false, true,") > > > >> @CsvSource("true, false,") > > > >> @CsvSource("false, false,") > > > >> @CsvSource("true, true, VENDED_CREDENTIALS") > > > >> @CsvSource("false, true, VENDED_CREDENTIALS") > > > >> public void testAppendFiles( > > > >> boolean pathStyle, boolean stsEnabled, AccessDelegationMode > > > >> delegationMode) > > > >> throws IOException { > > > >> ``` > > > >> > > > >> Thus, if it is okay to not have tests cover virtual host, I can remove > > > >> them and switch to rustfs testcontainers (similar to the minio one but > > > >> couple lines changes) and do the final test. From getting-start > > example, > > > >> STS is all working as I am setting vended credentials implicitly in > > the > > > >> spark command ( > > > >> https://github.com/apache/polaris/tree/main/getting-started/rustfs): > > > >> ``` > > > >> --conf > > > >> > > > > > spark.sql.catalog.polaris.header.X-Iceberg-Access-Delegation=vended-credentials > > > >> > > > >> ``` > > > >> > > > >> Thanks, > > > >> Yong Zheng > > > >> > > > >> > > > >>> On 2026/01/26 02:10:10 Dmitri Bourlatchkov wrote: > > > >>> Thanks for the analysis, Yong! > > > >>> > > > >>> I do not think we have any MinIO-based tests that rely on virtual > > > >>> host-stype access... I may be mistaken, though... Did you come across > > > any > > > >>> specific cases like this? > > > >>> > > > >>> IIRC all MinIO-based examples and tests use path-style access. > > > >>> > > > >>> Just to confirm, STS (cred. vending) works with RustFS, right? > > > >>> > > > >>> Thanks, > > > >>> Dmitri. > > > >>> > > > >>>> On Sat, Jan 24, 2026 at 11:12 PM Yong Zheng <[email protected]> > > > wrote: > > > >>> > > > >>>> So I spent some time on this today. With path style access, rustfs > > > will > > > >>>> work 100% with couple lines changes. However, when dealing with > > > virtual > > > >>>> host style access, it is not happy with testcontainer due to > > > >> testcontainer > > > >>>> map a random port to host and rustfs is very restrict on server > > > domains > > > >>>> (could be bug if not intensional). Take an example, when I have > > rustfs > > > >>>> mapped to port 9000 and testcontainer maps it to 62226 (random > > > selected > > > >>>> port), the health check happens on localhost:62226 which is not > > > >> something > > > >>>> we can set ahead of time for RUSTFS_SERVER_DOMAINS. Same observation > > > >> had > > > >>>> being reported in https://github.com/rustfs/rustfs/issues/308 where > > > >>>> others confirm: > > > >>>> ``` > > > >>>> ...I tried the domain name method again. When configuring > > > >>>> RUSTFS_SERVER_DOMAINS, if the domain name port is not 443, you need > > to > > > >> fill > > > >>>> in the port as well, for example, test.rustfs.cn:9000. > > > >>>> ``` > > > >>>> But with testcontainer, this will map to some random port on host as > > > >>>> describe above then throw InvalidBucketName error. > > > >>>> > > > >>>> Another issue is https://github.com/rustfs/rustfs/issues/1593 where > > > >>>> rustfs thinks that mapping mentioned above is a bucket name. > > > >>>> > > > >>>> That being said, if we want to change our user facing > > getting-started > > > >>>> example from minio to rustfs, it will work 100%. However, we can't > > > >> change > > > >>>> our integration tests from minio to rustfs if we need to continue > > > >> cover the > > > >>>> tests on virtual host style access. > > > >>>> > > > >>>> Thanks, > > > >>>> Yong Zheng > > > >>>> > > > >>>> On 2026/01/19 19:36:48 Yufei Gu wrote: > > > >>>>> I think it's a good plan to distinguish between getting-started > > > >> examples > > > >>>>> and integration tests, esp. if RustFS is much faster. Thanks > > Dmitri. > > > >>>>> Will current integration tests fail if we switch to RustFS from > > > >> minio? > > > >>>>> > > > >>>> > > > >> > > > > > https://github.com/apache/polaris/blob/5e5779f115472fa8614a6820b1e178520d927012/integration-tests/build.gradle.kts#L70-L70 > > > >>>>> > > > >>>>> Yufei > > > >>>>> > > > >>>>> > > > >>>>> On Mon, Jan 19, 2026 at 11:23 AM Dmitri Bourlatchkov < > > > >> [email protected]> > > > >>>>> wrote: > > > >>>>> > > > >>>>>> Hi Yufei, > > > >>>>>> > > > >>>>>> From my POV we need some storage for "getting started" examples > > and > > > >>>> some > > > >>>>>> storage for CI. > > > >>>>>> > > > >>>>>> They may be the same or different. > > > >>>>>> > > > >>>>>> I think Apache Ozone is preferable for examples (when it supports > > > >> STS) > > > >>>>>> because it's also inside the ASF and examples do not have to be as > > > >>>> lean as > > > >>>>>> containers used in CI. > > > >>>>>> > > > >>>>>> IMHO, RustFS looks promising for CI due to simplicity / > > > >> performance... > > > >>>> but > > > >>>>>> it remains to be tested :) > > > >>>>>> > > > >>>>>> As long as the RustFS project remains active and aligned with S3 > > > >> API > > > >>>>>> changes, I think it does not matter so much that it is not an ASF > > > >>>> project. > > > >>>>>> It is released under ALv2 [1] > > > >>>>>> > > > >>>>>> [1] https://github.com/rustfs/rustfs > > > >>>>>> > > > >>>>>> Cheers, > > > >>>>>> Dmitri. > > > >>>>>> > > > >>>>>> On Mon, Jan 19, 2026 at 2:13 PM Yufei Gu <[email protected]> > > > >> wrote: > > > >>>>>> > > > >>>>>>> Given STS is an essential requirement for s3 compatible storage > > > >>>>>> validation, > > > >>>>>>> waiting for Ozone is reasonable to me. RustFS is also a good > > > >>>> candidate if > > > >>>>>>> it's faster and supports STS. With that, are we trying to test > > > >> both > > > >>>> Ozone > > > >>>>>>> and RustFS as a long term solution? > > > >>>>>>> > > > >>>>>>> Yufei > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> On Mon, Jan 19, 2026 at 8:14 AM Jean-Baptiste Onofré < > > > >>>> [email protected]> > > > >>>>>>> wrote: > > > >>>>>>> > > > >>>>>>>> Hi Dmitri, > > > >>>>>>>> > > > >>>>>>>> That’s a fair point. Since we are discussing the quickstart > > > >> guide, > > > >>>>>>> ensuring > > > >>>>>>>> a consistent message and a positive user experience is > > > >> essential. > > > >>>>>>>> > > > >>>>>>>> While I don't have a strong preference, I lean toward Apache > > > >> Ozone > > > >>>> as > > > >>>>>> it > > > >>>>>>> is > > > >>>>>>>> an ASF project, which would help us avoid a similar situation > > > >> to > > > >>>> the > > > >>>>>> one > > > >>>>>>> we > > > >>>>>>>> are currently facing with MinIO. > > > >>>>>>>> > > > >>>>>>>> That said, if RustFS is faster to set up and works well with > > > >>>> minimal > > > >>>>>>>> effort, I am completely fine with that approach. > > > >>>>>>>> > > > >>>>>>>> Thanks! > > > >>>>>>>> > > > >>>>>>>> Regards, > > > >>>>>>>> JB > > > >>>>>>>> > > > >>>>>>>> On Mon, Jan 19, 2026 at 3:59 PM Dmitri Bourlatchkov < > > > >>>> [email protected]> > > > >>>>>>>> wrote: > > > >>>>>>>> > > > >>>>>>>>> Hi All, > > > >>>>>>>>> > > > >>>>>>>>> The latest MinIO images work well for Polaris tests and > > > >> demos. > > > >>>>>>>>> > > > >>>>>>>>> It might still be worth proactively trying newer S3 > > > >>>> implementations > > > >>>>>>> like > > > >>>>>>>>> RustFS and/or SeaweedFS (although I have not personally tried > > > >>>> them > > > >>>>>> out > > > >>>>>>>> with > > > >>>>>>>>> Polaris yet). > > > >>>>>>>>> > > > >>>>>>>>> Even though we may prefer Ozone as the main storage in > > > >> examples > > > >>>> when > > > >>>>>> it > > > >>>>>>>>> supports STS, validating other S3 implementations could be > > > >>>> helpful > > > >>>>>> for > > > >>>>>>>>> Polaris end users. > > > >>>>>>>>> > > > >>>>>>>>> Also, I expect RustFS to be faster and less cumbersome to > > > >> set up > > > >>>> than > > > >>>>>>>>> Ozone, which could be an advantage for integration tests in > > > >> CI. > > > >>>>>>>>> > > > >>>>>>>>> Cheers, > > > >>>>>>>>> Dmitri. > > > >>>>>>>>> > > > >>>>>>>>> On Mon, Jan 19, 2026 at 6:03 AM Jean-Baptiste Onofré < > > > >>>>>> [email protected]> > > > >>>>>>>>> wrote: > > > >>>>>>>>> > > > >>>>>>>>>> Hi, > > > >>>>>>>>>> > > > >>>>>>>>>> I know the Ozone community is discussing to have STS full > > > >>>> support > > > >>>>>> for > > > >>>>>>>>> 2.2.0 > > > >>>>>>>>>> release. > > > >>>>>>>>>> > > > >>>>>>>>>> So, I think it's reasonable to keep minio for now waiting > > > >> ozone > > > >>>>>>> 2.2.0. > > > >>>>>>>>>> > > > >>>>>>>>>> Thoughts ? > > > >>>>>>>>>> > > > >>>>>>>>>> Regards > > > >>>>>>>>>> JB > > > >>>>>>>>>> > > > >>>>>>>>>> On Mon, Jan 19, 2026 at 3:59 AM Yong Zheng < > > > >> [email protected]> > > > >>>>>>> wrote: > > > >>>>>>>>>> > > > >>>>>>>>>>> Hi Adnan and JB, > > > >>>>>>>>>>> > > > >>>>>>>>>>> I took a closer look at Ozone and it doesn't appear STS > > > >> is > > > >>>> fully > > > >>>>>>>>>> supported > > > >>>>>>>>>>> yet for Ozone: > > > >>>>>>>>>>> > > > >>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>> > > > >> > > > > > https://github.com/apache/ozone/blob/master/hadoop-hdds/docs/content/design/ozone-sts.md > > > >>>>>>>>>> . > > > >>>>>>>>>>> In this case, do we still wan to cut over the getting > > > >> start > > > >>>>>> example > > > >>>>>>>> to > > > >>>>>>>>>>> Ozone one instead of MinIO? > > > >>>>>>>>>>> > > > >>>>>>>>>>> Thanks, > > > >>>>>>>>>>> Yong Zheng > > > >>>>>>>>>>> > > > >>>>>>>>>>> On 2026/01/14 23:32:11 Adnan Hemani via dev wrote: > > > >>>>>>>>>>>> Hi all, > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> I'd hope that we can pivot to Ozone and hide the > > > >> additional > > > >>>>>>>>> adaptation > > > >>>>>>>>>>>> behind our setup scripts. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> It's a shame that my fears came true about relying on a > > > >>>>>> provider > > > >>>>>>>> who > > > >>>>>>>>> is > > > >>>>>>>>>>>> actively trying to sell the managed version of their > > > >>>> product > > > >>>>>>>> shutting > > > >>>>>>>>>>> down > > > >>>>>>>>>>>> their OSS functionalities [1]. Any alternatives we > > > >>>> consider, in > > > >>>>>>> my > > > >>>>>>>>>>> opinion, > > > >>>>>>>>>>>> should take this experience into consideration. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> I'm still not against reverting back to using local FS > > > >> for > > > >>>> the > > > >>>>>>>>>> Quickstart > > > >>>>>>>>>>>> experience. If all the alternatives only complicate > > > >> things > > > >>>> for > > > >>>>>>> the > > > >>>>>>>>> end > > > >>>>>>>>>>>> user, then it will be a poor Quickstart experience - > > > >> and > > > >>>> that's > > > >>>>>>>> much > > > >>>>>>>>>>> worse > > > >>>>>>>>>>>> than giving more functionality in Quickstart but users > > > >> not > > > >>>>>>> knowing > > > >>>>>>>>> how > > > >>>>>>>>>> to > > > >>>>>>>>>>>> actually use it. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> Best, > > > >>>>>>>>>>>> Adnan Hemani > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> [1] https://github.com/apache/polaris/pull/2976 > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> On Fri, Jan 9, 2026 at 6:58 AM Jean-Baptiste Onofré < > > > >>>>>>>> [email protected] > > > >>>>>>>>>> > > > >>>>>>>>>>> wrote: > > > >>>>>>>>>>>> > > > >>>>>>>>>>>>> Hi > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Yes, Ozone supports STS, that's why I mentioned it. > > > >> It's > > > >>>>>>> probably > > > >>>>>>>>>> close > > > >>>>>>>>>>>>> enough to minIO (even if some "adaptation" might be > > > >>>> required > > > >>>>>>> for > > > >>>>>>>>>> STS). > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Just my $0.01 > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Regards > > > >>>>>>>>>>>>> JB > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> On Fri, Jan 9, 2026 at 2:15 AM Yufei Gu < > > > >>>>>> [email protected]> > > > >>>>>>>>>> wrote: > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>>> Agreed with Dmitri that STS is essential in this > > > >> case, > > > >>>>>>>> otherwise > > > >>>>>>>>> a > > > >>>>>>>>>>> local > > > >>>>>>>>>>>>>> file system will be good enough. > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> AFAIK, Apache Ozone supports STS starting from > > > >> 2.1.0, > > > >>>>>>>>>>>>>> https://ozone.apache.org/release/2.1.0/. > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> Yufei > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> On Thu, Jan 8, 2026 at 4:55 PM Dmitri Bourlatchkov > > > >> < > > > >>>>>>>>>> [email protected] > > > >>>>>>>>>>>> > > > >>>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> Hi François, > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> I could not find any mention of STS / AssumeRole > > > >> in > > > >>>>>>> GarageHQ > > > >>>>>>>>> docs > > > >>>>>>>>>>>>> (really > > > >>>>>>>>>>>>>>> quick looks), so I assume it does not support > > > >> STS... > > > >>>> Do > > > >>>>>> you > > > >>>>>>>>> know > > > >>>>>>>>>>> for > > > >>>>>>>>>>>>>> sure? > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> STS is pretty important for ease of use in > > > >> Polaris > > > >>>>>> getting > > > >>>>>>>>>> started > > > >>>>>>>>>>>>> (i.e. > > > >>>>>>>>>>>>>>> setup without STS is more involved). > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> Cheers, > > > >>>>>>>>>>>>>>> Dmitri. > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> On Thu, Jan 8, 2026 at 3:09 PM Francois Papon < > > > >>>>>>>>> [email protected] > > > >>>>>>>>>>> > > > >>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> Hi, > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> About other solutions, I made some test to > > > >> evaluate > > > >>>>>>> GaragHQ > > > >>>>>>>>> as > > > >>>>>>>>>> an > > > >>>>>>>>>>>>>>>> alternative to MinIO: > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> https://garagehq.deuxfleurs.fr/ > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> I don't know if all the required > > > >> functionnalities > > > >>>> used > > > >>>>>> by > > > >>>>>>>>>>> Polaris are > > > >>>>>>>>>>>>>>>> provided but for the test/quickstart part may > > > >> be > > > >>>> it can > > > >>>>>>> do > > > >>>>>>>>> the > > > >>>>>>>>>>> job. > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> regards, > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> François > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> Le 08/01/2026 à 16:35, Adam Christian a écrit : > > > >>>>>>>>>>>>>>>>> Thanks, folks! Great points! I do like the > > > >> idea > > > >>>> of > > > >>>>>>> using > > > >>>>>>>>>>> something > > > >>>>>>>>>>>>>>> other > > > >>>>>>>>>>>>>>>>> than MinIO. > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> My only 2 cents: For the quickstart docker > > > >>>> compose > > > >>>>>>> file, > > > >>>>>>>> I > > > >>>>>>>>>>> believe > > > >>>>>>>>>>>>>> that > > > >>>>>>>>>>>>>>>> we > > > >>>>>>>>>>>>>>>>> should use object storage that can be > > > >>>> automatically > > > >>>>>>>>>> configured > > > >>>>>>>>>>>>>> without > > > >>>>>>>>>>>>>>>>> having to put in credentials. The goal of the > > > >>>>>>> quickstart > > > >>>>>>>> is > > > >>>>>>>>>> to > > > >>>>>>>>>>> have > > > >>>>>>>>>>>>>>>> anyone > > > >>>>>>>>>>>>>>>>> who has Docker running locally to be able to > > > >>>> launch a > > > >>>>>>>>>>>>> non-production > > > >>>>>>>>>>>>>>>>> version of Polaris through a single command. > > > >> It's > > > >>>>>>>> targeted > > > >>>>>>>>>> for > > > >>>>>>>>>>>>> users > > > >>>>>>>>>>>>>>> who > > > >>>>>>>>>>>>>>>>> are just learning about Polaris. So, in my > > > >>>> opinion, > > > >>>>>>> this > > > >>>>>>>>>> rules > > > >>>>>>>>>>> out > > > >>>>>>>>>>>>>> AWS > > > >>>>>>>>>>>>>>>> S3. > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> As long as we meet that criteria, I do think > > > >> that > > > >>>>>>>> changing > > > >>>>>>>>>>> would be > > > >>>>>>>>>>>>>>>>> appropriate. Thanks for bringing this up! > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> Go community, > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> Adam > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> On Thu, Jan 8, 2026 at 9:16 AM Dmitri > > > >>>> Bourlatchkov < > > > >>>>>>>>>>>>>>>>> [email protected]> wrote: > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> Hi All, > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> Apache Ozone works well, AFAIK [1] but it > > > >>>> certainly > > > >>>>>>>>> requires > > > >>>>>>>>>>> more > > > >>>>>>>>>>>>>>> setup > > > >>>>>>>>>>>>>>>>>> work than MinIO. > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> WDYT about RustFS? [2] > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> [1] > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>> > > > >> > > > > > https://polaris.apache.org/in-dev/unreleased/getting-started/creating-a-catalog/s3/catalog-ozone/ > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> [2] https://github.com/rustfs/rustfs > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> Cheers, > > > >>>>>>>>>>>>>>>>>> Dmitri. > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> On Thu, Jan 8, 2026 at 8:46 AM Jean-Baptiste > > > >>>> Onofré > > > >>>>>> < > > > >>>>>>>>>>>>>> [email protected]> > > > >>>>>>>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> Hi Yong, > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> Thanks for bringing this to our attention. > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> I agree with your assessment regarding the > > > >>>> recent > > > >>>>>>>> changes > > > >>>>>>>>>> to > > > >>>>>>>>>>>>> MinIO > > > >>>>>>>>>>>>>>> OSS. > > > >>>>>>>>>>>>>>>>>> We > > > >>>>>>>>>>>>>>>>>>> could evaluate Apache Ozone as a potential > > > >>>>>>> alternative; > > > >>>>>>>>>>> while STS > > > >>>>>>>>>>>>>>> might > > > >>>>>>>>>>>>>>>>>>> require more changes, I believe it’s worth > > > >>>>>>>> investigating. > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> In the short term, we could update the > > > >>>> quickstart > > > >>>>>>> guide > > > >>>>>>>>> to > > > >>>>>>>>>>> use > > > >>>>>>>>>>>>> AWS > > > >>>>>>>>>>>>>> S3 > > > >>>>>>>>>>>>>>>>>> while > > > >>>>>>>>>>>>>>>>>>> we wait to finalize the Ozone integration. > > > >>>>>>>>>>>>>>>>>>> About Ceph, that's a good idea, assuming we > > > >>>> have > > > >>>>>> the > > > >>>>>>>> same > > > >>>>>>>>>>> kind of > > > >>>>>>>>>>>>>>>>>>> layout/experience. > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> Regards, > > > >>>>>>>>>>>>>>>>>>> JB > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>> On Thu, Jan 8, 2026 at 7:49 AM Yong Zheng < > > > >>>>>>>>>> [email protected] > > > >>>>>>>>>>>> > > > >>>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>>> Hello, > > > >>>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>>> We have MinIO support as S3 compatible > > > >>>> storage and > > > >>>>>>>> this > > > >>>>>>>>> is > > > >>>>>>>>>>> great > > > >>>>>>>>>>>>>> as > > > >>>>>>>>>>>>>>> it > > > >>>>>>>>>>>>>>>>>>>> allows users to quickly test out Apache > > > >>>> Polaris > > > >>>>>> as a > > > >>>>>>>>>>> catalog and > > > >>>>>>>>>>>>>>> write > > > >>>>>>>>>>>>>>>>>>> to a > > > >>>>>>>>>>>>>>>>>>>> S3 compatible storage. However, as MinIO > > > >> is > > > >>>> now > > > >>>>>>> under > > > >>>>>>>>>>>>> maintenance > > > >>>>>>>>>>>>>>> mode > > > >>>>>>>>>>>>>>>>>>> only > > > >>>>>>>>>>>>>>>>>>>> for OSS ( > > > >>>>>>>>>> https://github.com/minio/minio?tab=readme-ov-file), > > > >>>>>>>>>>> we > > > >>>>>>>>>>>>>>> won't > > > >>>>>>>>>>>>>>>>>> be > > > >>>>>>>>>>>>>>>>>>>> able to get updated images from public > > > >> image > > > >>>>>>> registry, > > > >>>>>>>>>>> should we > > > >>>>>>>>>>>>>>>>>> consider > > > >>>>>>>>>>>>>>>>>>>> switch our primary getting-start example > > > >> to > > > >>>>>>> non-MinIO > > > >>>>>>>>> one > > > >>>>>>>>>>>>> instead > > > >>>>>>>>>>>>>>> (the > > > >>>>>>>>>>>>>>>>>>>> current one is MinIO as backend: > > > >>>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>> > > > >> > > > > > https://github.com/apache/polaris/blob/main/getting-started/quickstart/docker-compose.yml > > > >>>>>>>>>>>>>>>>>>> )? > > > >>>>>>>>>>>>>>>>>>>> Without doing so, users will be likely > > > >> pulling > > > >>>>>> down > > > >>>>>>>>>> outdated > > > >>>>>>>>>>>>> MinIO > > > >>>>>>>>>>>>>>>>>> images > > > >>>>>>>>>>>>>>>>>>>> with critical CVEs couple months later for > > > >>>> their > > > >>>>>>> local > > > >>>>>>>>>>> setup to > > > >>>>>>>>>>>>>> play > > > >>>>>>>>>>>>>>>>>>>> around. If using outdated MinIO is a > > > >> concern > > > >>>> as > > > >>>>>> the > > > >>>>>>>>>>>>> getting-start > > > >>>>>>>>>>>>>>>>>>> example, > > > >>>>>>>>>>>>>>>>>>>> maybe we should switch to the Ceph one ( > > > >>>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>> > > > >> > > > > > https://github.com/apache/polaris/blob/main/getting-started/ceph/docker-compose.yml > > > >>>>>>>>>>>>>>>>>>> ) > > > >>>>>>>>>>>>>>>>>>>> but updated it to match the same layout? > > > >>>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>>>> Thanks, > > > >>>>>>>>>>>>>>>>>>>> Yong Zheng > > > >>>>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>> > > > >>>>>>> > > > >>>>>> > > > >>>>> > > > >>>> > > > >>> > > > >> > > > > >
