github.com/uber/kraken@v0.1.4/docker/herd/Dockerfile (about)

     1  # This image combines all central components into one container, for easier
     2  # deployment and management.
     3  FROM debian:10
     4  
     5  RUN apt-get update && apt-get install -y build-essential curl sqlite3 nginx sudo procps
     6  
     7  # Install redis.
     8  ADD http://download.redis.io/redis-stable.tar.gz /tmp/redis-stable.tar.gz
     9  RUN tar -xvzf /tmp/redis-stable.tar.gz -C /tmp
    10  RUN cd /tmp/redis-stable && make install
    11  
    12  RUN mkdir -p -m 777 /var/log/kraken/kraken-build-index
    13  RUN mkdir -p -m 777 /var/log/kraken/kraken-origin
    14  RUN mkdir -p -m 777 /var/log/kraken/kraken-proxy
    15  RUN mkdir -p -m 777 /var/log/kraken/kraken-testfs
    16  RUN mkdir -p -m 777 /var/log/kraken/kraken-tracker
    17  
    18  RUN mkdir -p -m 777 /var/cache/kraken/kraken-build-index
    19  RUN mkdir -p -m 777 /var/cache/kraken/kraken-origin
    20  RUN mkdir -p -m 777 /var/cache/kraken/kraken-proxy
    21  RUN mkdir -p -m 777 /var/cache/kraken/kraken-testfs
    22  RUN mkdir -p -m 777 /var/cache/kraken/kraken-tracker
    23  
    24  RUN mkdir -p -m 777 /var/run/kraken
    25  
    26  ARG USERNAME="root"
    27  ARG USERID="0"
    28  RUN if [ ${USERID} != "0" ]; then useradd --uid ${USERID} ${USERNAME}; fi
    29  
    30  # Allow proxy to run nginx as root.
    31  RUN if [ ${USERID} != "0" ]; then mkdir -p /etc/sudoers.d/ && \
    32      echo '${USERNAME}  ALL=(root) NOPASSWD: /usr/sbin/nginx' >> /etc/sudoers.d/kraken-proxy; fi
    33  
    34  COPY ./docker/setup_nginx.sh /tmp/setup_nginx.sh
    35  RUN /tmp/setup_nginx.sh ${USERNAME}
    36  
    37  USER ${USERNAME}
    38  
    39  COPY ./build-index/build-index /usr/bin/kraken-build-index
    40  COPY ./origin/origin           /usr/bin/kraken-origin
    41  COPY ./proxy/proxy             /usr/bin/kraken-proxy
    42  COPY ./tools/bin/testfs/testfs /usr/bin/kraken-testfs
    43  COPY ./tracker/tracker         /usr/bin/kraken-tracker
    44  
    45  WORKDIR /etc/kraken
    46  
    47  COPY ./config /etc/kraken/config
    48  COPY ./nginx/config /etc/kraken/nginx/config
    49  COPY ./test/tls /etc/kraken/tls