github.com/sagansystems/goofys-app@v0.19.1-0.20180410053237-b2302fdf5af9/bench/Dockerfile (about) 1 FROM ubuntu:16.04 2 RUN apt-get update && \ 3 apt-get -y install --no-install-recommends \ 4 # s3fs dependencies \ 5 automake autotools-dev fuse g++ git libcurl4-gnutls-dev libfuse-dev \ 6 libssl-dev libxml2-dev make pkg-config \ 7 # riofs dependencies \ 8 build-essential gcc make automake autoconf libtool pkg-config intltool \ 9 libglib2.0-dev libfuse-dev libxml2-dev libevent-dev libssl-dev \ 10 # for running goofys benchmark \ 11 curl python-setuptools python-pip gnuplot-nox imagemagick awscli \ 12 # finally, clean up to make image smaller \ 13 && apt-get clean 14 # goofys graph generation 15 RUN pip install uncertainties numpy 16 17 WORKDIR /tmp 18 19 ENV PATH=$PATH:/usr/local/go/bin 20 RUN curl -O https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz && \ 21 tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gz && \ 22 rm go1.8.3.linux-amd64.tar.gz 23 24 RUN git clone --depth 1 https://github.com/s3fs-fuse/s3fs-fuse.git && \ 25 cd s3fs-fuse && ./autogen.sh && ./configure && make -j4 > /dev/null && make install && \ 26 cd .. && rm -Rf s3fs-fuse 27 28 RUN git clone --depth 1 https://github.com/skoobe/riofs && \ 29 cd riofs && ./autogen.sh && ./configure && make -j4 && make install && \ 30 cd .. && rm -Rf riofs 31 32 RUN curl -L -O https://github.com/kahing/catfs/releases/download/v0.4.0/catfs && \ 33 mv catfs /usr/bin && chmod 0755 /usr/bin/catfs 34 35 # ideally I want to clear out all the go deps too but there's no 36 # way to do that with ADD 37 ENV PATH=$PATH:/root/go/bin 38 ADD . /root/go/src/github.com/kahing/goofys 39 WORKDIR /root/go/src/github.com/kahing/goofys 40 RUN go get . && make install 41 42 ENTRYPOINT ["/root/go/src/github.com/kahing/goofys/bench/run_bench.sh"]