Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon s3 Minio:使用docker compose添加公共存储桶_Amazon S3_Docker Compose_Minio - Fatal编程技术网

Amazon s3 Minio:使用docker compose添加公共存储桶

Amazon s3 Minio:使用docker compose添加公共存储桶,amazon-s3,docker-compose,minio,Amazon S3,Docker Compose,Minio,下面是我的docker compose中的一个服务 minio: image: minio/minio:edge environment: MINIO_ACCESS_KEY: minio123 MINIO_SECRET_KEY: minio123 volumes: - datastore:/data ports: - 9000:9000 networks: - devnetwork c

下面是我的docker compose中的一个服务

  minio:
    image: minio/minio:edge
    environment:
      MINIO_ACCESS_KEY: minio123
      MINIO_SECRET_KEY: minio123
    volumes:
      - datastore:/data
    ports:
      - 9000:9000
    networks:
      - devnetwork
    command: server /data
我尝试了以下多个命令:

mc policy set public myminio/mybucket
当我尝试访问存储桶中的图像时,总是会出现以下错误

  <?xml version="1.0" encoding="UTF-8"?>
  <Error>
  <Code>AccessDenied</Code>
  <Message>Access Denied.</Message>
  <Key>images/281c1458-41cd-4e1e-b6d5-b7243b9ac650.jpg</Key>
  <BucketName>mybucket</BucketName>
  <Resource>/mybucket/images/281c1458-41cd-4e1e-b6d5-b7243b9ac650.jpg</Resource>
  <RequestId>1667FAC6085F2E6C</RequestId>
  <HostId>9159f2da-4de3-4300-91fe-d59a41d883c4</HostId>
  </Error>

您可以将mc添加到docker compose,如下所示-

为mc命令中发生的更改更新一个位,看起来如下所示:

version: "2"
services:
  minio:
    image: minio/minio
    ports:
      - "9000:9000"
    volumes:
      - datastore:/data
    environment:
      - "MINIO_ACCESS_KEY=minio"
      - "MINIO_SECRET_KEY=minio123"
    command: server /data

  createbuckets:
    image: minio/mc
    depends_on:
      - minio
    entrypoint: >
      /bin/sh -c "
      /usr/bin/mc alias set myminio http://minio:9000 minio minio123;
      /usr/bin/mc mb myminio/somebucketname;
      /usr/bin/mc policy set public myminio/somebucketname;
      exit 0;
      "

您可以将mc添加到docker compose,如下所示-

为mc命令中发生的更改更新一个位,看起来如下所示:

version: "2"
services:
  minio:
    image: minio/minio
    ports:
      - "9000:9000"
    volumes:
      - datastore:/data
    environment:
      - "MINIO_ACCESS_KEY=minio"
      - "MINIO_SECRET_KEY=minio123"
    command: server /data

  createbuckets:
    image: minio/mc
    depends_on:
      - minio
    entrypoint: >
      /bin/sh -c "
      /usr/bin/mc alias set myminio http://minio:9000 minio minio123;
      /usr/bin/mc mb myminio/somebucketname;
      /usr/bin/mc policy set public myminio/somebucketname;
      exit 0;
      "

我只需转到下面的minio web客户端图像,就解决了这个问题:

步骤1:

打开要公开的存储桶的设置 点击编辑设置

步骤2:

添加新策略。我没有在保险单上输入任何内容。我刚刚在下拉列表中选择了读写选项。这将导致具有读写权限的“*”策略


我只需转到下面的minio web客户端图像,就解决了这个问题:

步骤1:

打开要公开的存储桶的设置 点击编辑设置

步骤2:

添加新策略。我没有在保险单上输入任何内容。我刚刚在下拉列表中选择了读写选项。这将导致具有读写权限的“*”策略