| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | FROM ubuntu:18.04COPY ./ ./RUN apt-get update -yqq && \	 apt-get install -yqq software-properties-common build-essential curl locales wget unzip git \    libmysqlclient-dev libpq-dev \    libpcre3 libpcre3-dev \    libssl-dev libcurl4-openssl-dev \    zlib1g-dev \    libreadline6-dev \    libbz2-dev \    libxslt-dev libgdbm-dev ncurses-dev  \    libffi-dev libtool bison libevent-dev \    liborc-0.4-0 \    libmcrypt-dev libicu-dev \    re2c libnuma-dev \	 postgresql-server-dev-all libcap2-bin && \	 add-apt-repository ppa:ubuntu-toolchain-r/test -y && \	 apt-get update -yqq && \	 apt-get install -yqq gcc-8 g++-8RUN locale-gen en_US.UTF-8ENV LANG en_US.UTF-8ENV LANGUAGE en_US:enENV LC_ALL en_US.UTF-8ENV DEBIAN_FRONTEND noninteractiveENV CC=gcc-8ENV CXX=g++-8ENV AR=gcc-ar-8ENV RANLIB=gcc-ranlib-8ENV IROOT=/installENV ULIB_ROOT=$IROOT/ULibENV ULIB_VERSION=2.4.2ENV ULIB_DOCUMENT_ROOT=$ULIB_ROOT/ULIB_DOCUMENT_ROOTWORKDIR $IROOTRUN mkdir -p $ULIB_DOCUMENT_ROOTRUN wget -q -O ULib-${ULIB_VERSION}.tar.gz https://github.com/stefanocasazza/ULib/archive/v${ULIB_VERSION}.tar.gzRUN tar xf ULib-${ULIB_VERSION}.tar.gzWORKDIR $IROOT/ULib-$ULIB_VERSION# AVOID "configure: error: newly created file is older than distributed files! Check your system clock"RUN cp /src/* src/ulib/net/server/plugin/uspRUN find . -exec touch {} \;RUN echo "userver {" >> $ULIB_ROOT/benchmark.cfgRUN echo "PORT 8080" >> $ULIB_ROOT/benchmark.cfgRUN echo "PREFORK_CHILD $(( 3 * $(nproc) / 2 ))" >> $ULIB_ROOT/benchmark.cfgRUN echo "TCP_LINGER_SET 0" >> $ULIB_ROOT/benchmark.cfgRUN echo "LISTEN_BACKLOG 256" >> $ULIB_ROOT/benchmark.cfgRUN echo "DOCUMENT_ROOT $ULIB_DOCUMENT_ROOT " >> $ULIB_ROOT/benchmark.cfgRUN echo "}" >> $ULIB_ROOT/benchmark.cfgRUN USP_FLAGS="-DAS_cpoll_cppsp_DO" \    ./configure --prefix=$ULIB_ROOT \    --disable-static --disable-examples \    --without-ssl --disable-HCRS --without-pcre --without-expat \    --without-libz --without-libuuid --disable-HPRS --without-magic --without-libares \	 --enable-static-server-plugin=httpRUN make install && \	 cd examples/userver && make install && \	 cd ../../src/ulib/net/server/plugin/usp && \    make json.la && \    cp .libs/json.so $ULIB_DOCUMENT_ROOTENV PATH=${ULIB_ROOT}/bin:${PATH}ADD ./ /ulibWORKDIR /ulibENV UMEMPOOL="58,0,0,41,273,-15,-14,-20,36"EXPOSE 8080CMD setcap cap_sys_nice,cap_sys_resource,cap_net_bind_service,cap_net_raw+eip $IROOT/ULib/bin/userver_tcp && \    $IROOT/ULib/bin/userver_tcp -c $IROOT/ULib/benchmark.cfg
 |