🐮

minioに格納した画像を開こうとするとAccessDeniedになる

2024/10/02に公開

この記事について

minioに格納した画像をブラウザで表示しようとするとAccessDeniedとなり表示できない事象が発生しました。

エラー内容について

以下のような感じのエラーです。

<Error>
  <Code>AccessDenied</Code>
  <Message>Access Denied.</Message>
  <Key>test</Key>
  <BucketName>test</BucketName>
  <Resource>test</Resource>
  <RequestId>test</RequestId>
  <HostId>test</HostId>
</Error>

解決策

ブラウザから設定する

ブラウザから設定するには画像の箇所をpablicにする必要がありました。

コマンドで設定する

コンテナの立上げ時にpablicにするにはこちらの記事様が参考になりました。
https://ymmooot.dev/articles/17

docker-compose.ymlを引用

services:
  minio:
    image: minio/minio:latest
    environment:
      MINIO_ROOT_USER: minioadmin
      MINIO_ROOT_PASSWORD: minioadmin
    ports:
      - 9000:9000
      - 9001:9001
    volumes:
      - ./.minio-storage/:/storage
    command: ['server', '/storage', '--console-address', ':9001']
  mc:
    image: minio/mc:latest
    depends_on:
      - minio
    environment:
      MINIO_ROOT_USER: "minioadmin"
      MINIO_ROOT_PASSWORD: "minioadmin"
    entrypoint: >
      /bin/sh -c "
      mc alias set myminio http://minio:9000 minioadmin minioadmin;
      mc mb myminio/local-minio;
      mc anonymous set public myminio/local-minio;
      "

Discussion