Is s3fs not able to mount inside docker container?

前端 未结 2 1014
时光说笑
时光说笑 2020-12-29 08:32

I want to mount s3fs inside of docker container.

I made docker image with s3fs, and did like this:

host$ docker run -it --rm docker/s3fs bash
[ root@         


        
2条回答
  •  独厮守ぢ
    2020-12-29 09:27

    I'm not sure what you did that did not work, but I was able to get this to work like this:

    Dockerfile:

    FROM ubuntu:12.04
    
    RUN apt-get update -qq
    RUN apt-get install -y build-essential libfuse-dev fuse-utils libcurl4-openssl-dev libxml2-dev mime-support automake libtool wget tar
    
    RUN wget https://github.com/s3fs-fuse/s3fs-fuse/archive/v1.77.tar.gz -O /usr/src/v1.77.tar.gz
    RUN tar xvz -C /usr/src -f /usr/src/v1.77.tar.gz
    RUN cd /usr/src/s3fs-fuse-1.77 && ./autogen.sh && ./configure --prefix=/usr && make && make install
    
    RUN mkdir /s3bucket
    

    After building with:

    docker build --rm -t ubuntu/s3fs:latest .
    

    I ran the container with:

    docker run -it -e AWSACCESSKEYID=obscured -e AWSSECRETACCESSKEY=obscured --privileged ubuntu/s3fs:latest bash
    

    and then inside the container:

    root@efa2689dca96:/# s3fs s3bucket /s3bucket
    root@efa2689dca96:/# ls /s3bucket
    testing.this.out  work.please  working
    root@efa2689dca96:/#
    

    which successfully listed the files in my s3bucket.

    You do need to make sure the kernel on your host machine supports fuse, but it would seem you have already done so?

    Note: Your S3 mountpoint will not show/work from inside other containers when using Docker's --volume or --volumes-from directives. For example:

    docker run -t --detach --name testmount -v /s3bucket -e AWSACCESSKEYID=obscured -e AWSSECRETACCESSKEY=obscured --privileged --entrypoint /usr/bin/s3fs ubuntu/s3fs:latest -f s3bucket /s3bucket
    docker run -it --volumes-from testmount --entrypoint /bin/ls ubuntu:12.04 -ahl /s3bucket
    total 8.0K
    drwxr-xr-x  2 root root 4.0K Aug 21 21:32 .
    drwxr-xr-x 51 root root 4.0K Aug 21 21:33 ..
    

    returns no files even though there are files in the bucket.

提交回复
热议问题