Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3f6bcd3786 | ||
|
|
283342add5 | ||
|
|
9d93e93525 | ||
|
|
2073c1c906 |
No files matched your search
+31
-75
@@ -1,33 +1,12 @@
|
||||
FROM ubuntu:bionic
|
||||
|
||||
|
||||
RUN apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
gnupg \
|
||||
software-properties-common \
|
||||
wget
|
||||
|
||||
RUN \
|
||||
echo "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main" >> /etc/apt/sources.list && \
|
||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key > llvm_key && apt-key add llvm_key
|
||||
|
||||
# Add Kitware repo to get latest cmake
|
||||
RUN \
|
||||
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | apt-key add - && \
|
||||
apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main' && \
|
||||
apt update
|
||||
|
||||
RUN \
|
||||
apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
libllvm-9-ocaml-dev libllvm9 llvm-9 llvm-9-dev llvm-9-doc llvm-9-examples llvm-9-runtime \
|
||||
clang-9 clang-tools-9 clang-9-doc libclang-common-9-dev libclang-9-dev libclang1-9 clang-format-9 python-clang-9 clangd-9 \
|
||||
libfuzzer-9-dev \
|
||||
lldb-9 \
|
||||
lld-9 \
|
||||
libc++-9-dev libc++abi-9-dev \
|
||||
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
autoconf \
|
||||
automake \
|
||||
bsdmainutils \
|
||||
ccache \
|
||||
clang-format \
|
||||
clang \
|
||||
cmake \
|
||||
curl \
|
||||
libunwind8 \
|
||||
@@ -43,11 +22,13 @@ apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
htop \
|
||||
iputils-ping \
|
||||
libc6-dbg \
|
||||
libclang-dev \
|
||||
liblttng-ust-dev \
|
||||
libncurses5-dev \
|
||||
libreadline-dev \
|
||||
libtool \
|
||||
libz-dev \
|
||||
llvm \
|
||||
locales \
|
||||
lttng-modules-dkms \
|
||||
lttng-tools \
|
||||
@@ -58,8 +39,6 @@ apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
openssh-server \
|
||||
pkg-config \
|
||||
python-pip \
|
||||
python3-pip \
|
||||
python3-venv \
|
||||
screen \
|
||||
silversearcher-ag \
|
||||
sudo \
|
||||
@@ -91,29 +70,10 @@ apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
||||
libpq-dev \
|
||||
libpqxx-dev \
|
||||
zip \
|
||||
parallel \
|
||||
patchelf \
|
||||
# aws tools
|
||||
awscli \
|
||||
&& rm -rf /var/lig/apt/lists/*
|
||||
|
||||
|
||||
run \
|
||||
update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-9 100; \
|
||||
update-alternatives --install /usr/bin/clang clang /usr/bin/clang-9 100; \
|
||||
update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-9 100; \
|
||||
update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-9 100; \
|
||||
update-alternatives --config clang; \
|
||||
update-alternatives --config clang++; \
|
||||
update-alternatives --config clang-format; \
|
||||
update-alternatives --config clangd
|
||||
|
||||
# this is done here so that ccache sees clang++ installed, not clang-9
|
||||
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y ccache
|
||||
|
||||
|
||||
run pip install pybars3 paramiko mkdocs
|
||||
run pip3 install paramiko cryptography
|
||||
run npm install -g npx
|
||||
|
||||
# fix locale so we can run tmux
|
||||
@@ -124,6 +84,9 @@ run locale-gen
|
||||
# expand libc sources
|
||||
run cd /usr/src/glibc ; tar xvf glibc-*.tar.xz
|
||||
|
||||
# build cgdb (the version shipped with ubuntu is too old)
|
||||
copy cgdb-0.7.0.tar.gz /externals/
|
||||
run cd /externals/ && tar -xvzf cgdb-0.7.0.tar.gz && cd cgdb-0.7.0 && ./configure && make -j$(nproc) && make install
|
||||
|
||||
# setup ssh
|
||||
RUN mkdir /var/run/sshd && echo 'root:root' | chpasswd && \
|
||||
@@ -156,7 +119,7 @@ RUN wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsof
|
||||
&& sudo apt-get install apt-transport-https -y \
|
||||
&& sudo apt-get update \
|
||||
&& sudo apt-get install dotnet-sdk-2.1 -y \
|
||||
&& sudo apt-get install dotnet-sdk-3.1 -y
|
||||
&& sudo apt-get install dotnet-sdk-3.0 -y
|
||||
|
||||
# Enable detection of running in a container
|
||||
ENV DOTNET_RUNNING_IN_CONTAINER=true \
|
||||
@@ -198,6 +161,22 @@ run ./build_sqlite.sh && rm -rf /sqlite-version-3.26.0/
|
||||
copy git-lfs /usr/bin/
|
||||
run chmod +x /usr/bin/git-lfs && git lfs install
|
||||
|
||||
#postgres
|
||||
RUN sudo apt-get update \
|
||||
&& wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - \
|
||||
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee /etc/apt/sources.list.d/pgdg.list \
|
||||
&& sudo apt-get update \
|
||||
&& sudo apt-get install -y postgresql-12 postgresql-client-12
|
||||
|
||||
RUN mkdir -p /var/lib/postgresql/ssl ;\
|
||||
chown postgres:postgres /var/lib/postgresql/ssl ;\
|
||||
cp /etc/ssl/certs/ssl-cert-snakeoil.pem /var/lib/postgresql/ssl/ ;\
|
||||
cp /etc/ssl/private/ssl-cert-snakeoil.key /var/lib/postgresql/ssl/ ;\
|
||||
chown -R postgres:postgres /var/lib/postgresql/ssl/ssl-cert-snakeoil.* ;\
|
||||
chmod 600 /var/lib/postgresql/ssl/* ;\
|
||||
chmod 700 /var/lib/postgresql/ssl
|
||||
#
|
||||
|
||||
##### Onload Stuff #####
|
||||
|
||||
# Onload version and its md5sum
|
||||
@@ -222,18 +201,15 @@ RUN \
|
||||
libpcap0.8-dev \
|
||||
libtool-bin \
|
||||
&& cd /tmp \
|
||||
## && curl -fSL https://www.openonload.org/download/openonload-${ONLOAD_VERSION}.tgz -o /tmp/openonload-${ONLOAD_VERSION}.tgz \
|
||||
&& curl -fSL https://github.com/rigtorp/openonload/archive/master.zip -o /tmp/openonload-${ONLOAD_VERSION}.zip \
|
||||
## && echo "${ONLOAD_MD5SUM} openonload-${ONLOAD_VERSION}.tgz" | md5sum --check \
|
||||
## && tar -zxf openonload-${ONLOAD_VERSION}.tgz \
|
||||
&& unzip -a openonload-${ONLOAD_VERSION}.zip \
|
||||
## && cd /tmp/openonload-${ONLOAD_VERSION} \
|
||||
&& cd /tmp/openonload-master \
|
||||
&& curl -fSL https://www.openonload.org/download/openonload-${ONLOAD_VERSION}.tgz -o /tmp/openonload-${ONLOAD_VERSION}.tgz \
|
||||
&& echo "${ONLOAD_MD5SUM} openonload-${ONLOAD_VERSION}.tgz" | md5sum --check \
|
||||
&& tar -zxf openonload-${ONLOAD_VERSION}.tgz \
|
||||
&& cd /tmp/openonload-${ONLOAD_VERSION} \
|
||||
&& cd scripts \
|
||||
&& ./onload_build --user \
|
||||
&& ./onload_install --userfiles --nobuild \
|
||||
&& cd /tmp \
|
||||
&& rm -rf openonload* \
|
||||
&& rm -rf openonload-${ONLOAD_VERSION}.tgz openonload-${ONLOAD_VERSION} \
|
||||
&& if [ -z ${ONLOAD_WITHZF} ] ; then rm -rf /usr/include/zf /usr/bin/zf_stackdump /usr/bin/zf_debug /usr/lib/x86_64-linux-gnu/zf /usr/lib/x86_64-linux-gnu/libonload_zf* ; fi \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get remove -y --purge \
|
||||
curl \
|
||||
@@ -241,23 +217,3 @@ RUN \
|
||||
&& DEBIAN_FRONTEND=noninteractive apt-get autoremove -y
|
||||
|
||||
########################
|
||||
|
||||
# build rtags
|
||||
run \
|
||||
git clone --recursive https://github.com/Andersbakken/rtags.git && \
|
||||
cd rtags && \
|
||||
git submodule update && \
|
||||
git checkout v2.38 && \
|
||||
cmake . -DCMAKE_EXPORT_COMPILE_COMMANDS=1 . && \
|
||||
make -j$(nproc) install && \
|
||||
cd .. && \
|
||||
rm -rf rtags
|
||||
|
||||
# build cgdb (the version shipped with ubuntu is too old)
|
||||
run \
|
||||
git clone https://github.com/cgdb/cgdb.git && \
|
||||
cd cgdb && \
|
||||
git checkout v0.7.1 && \
|
||||
./autogen.sh && \
|
||||
./configure && make -j$(nproc) && \
|
||||
make install
|
||||
Binary file not shown.
Reference in new issue
Block a user