efrecon / docker-s3fs-client

Alpine-based s3fs client: mount from container, make available to other containers
BSD 3-Clause "New" or "Revised" License
173 stars 62 forks source link

S3FS_ARGS syntax in README.md #28

Closed sbancal closed 2 years ago

sbancal commented 2 years ago

Hi,

I get "Mount failure" error messages following the syntax given in https://github.com/efrecon/docker-s3fs-client/blob/96052ad3f583af31149706d7560b883a9e83bdc4/README.md?plain=1#L85

When I adapt it to the following syntax : '-oallow_other' (instead of 'allow_other') it works.

Is it a doc problem or your code could auto-inject that missing (and ugly) '-o' ?

efrecon commented 2 years ago

The code auto-injects the -o: https://github.com/efrecon/docker-s3fs-client/blob/96052ad3f583af31149706d7560b883a9e83bdc4/docker-entrypoint.sh#L68. Which image version are you using?

sbancal commented 2 years ago

I didn't specified a version, so I assume I use the latest.

sbancal commented 2 years ago

Here is my docker-compose.yml file :

---
version: '3.8'
services:
  s3fs:
    privileged: true
    image: efrecon/s3fs
    restart: unless-stopped
    environment:
      - AWS_S3_URL=${S3_ENDPOINT_URL}
      - AWS_S3_BUCKET=${S3_BUCKET_NAME}
      - AWS_S3_ACCESS_KEY_ID=${S3_ACCESS_KEY_ID}
      - AWS_S3_SECRET_ACCESS_KEY=${S3_SECRET_ACCESS_KEY}
      - UID=${S3_UID}
      - GID=${S3_GID}
      - S3FS_ARGS='-oallow_other'
      - S3FS_DEBUG=0
    volumes:
      - ${S3PATH}:/opt/s3fs/bucket:rshared
    devices:
      - /dev/fuse
    cap_add:
      - SYS_ADMIN
    security_opt:
      - apparmor=unconfined
# ...

When I change it to S3FS_ARGS='allow_other', I get :

s3fs_1 | s3fs: unable to access MOUNTPOINT xyzxyzxyzxyzxyzxyzxyzxyz: No such file or directory s3fs_1 | Mount failure

Without that S3FS_ARGS option, mount succeed, but I have some "forbiden" access right problems in other docker services.

pchampio commented 2 years ago

When I change it to S3FS_ARGS='allow_other', I get :

s3fs_1 | s3fs: unable to access MOUNTPOINT xyzxyzxyzxyzxyzxyzxyzxyz: No such file or directory s3fs_1 | Mount failure

IIRC, I had the same error, removing the quotes should fix this: S3FS_ARGS=allow_other.

efrecon commented 2 years ago

The quotes are misplaced according to the Docker compose specification (well, actually more of a YAML issue). If you want quotes, you should place them around the whole expression, i.e. "S3FS_ARGS=allow_other"