aboutsummaryrefslogtreecommitdiffstats
path: root/tools/docker
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2021-01-26 16:58:30 +0100
committerDmitry Vyukov <dvyukov@google.com>2021-01-26 17:20:10 +0100
commit55a7d4dfd9532ea2839895ddd562d1f9253f46d2 (patch)
treef7104ed597a170f09cf1e1a3bf7d385b0a21f70d /tools/docker
parentb5b4971aff177603c74dfd721a04cb5d7ae839d4 (diff)
tools/docker: add image for syzbot machines
Diffstat (limited to 'tools/docker')
-rw-r--r--tools/docker/syzbot/Dockerfile34
1 files changed, 34 insertions, 0 deletions
diff --git a/tools/docker/syzbot/Dockerfile b/tools/docker/syzbot/Dockerfile
new file mode 100644
index 000000000..dd93f302e
--- /dev/null
+++ b/tools/docker/syzbot/Dockerfile
@@ -0,0 +1,34 @@
+# Copyright 2021 syzkaller project authors. All rights reserved.
+# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+
+# syzbot container is used to run syz-ci on syzbot, use as:
+# docker build -t gcr.io/syzkaller/syzbot tools/docker/syzbot
+# docker push gcr.io/syzkaller/syzbot
+# docker run -it gcr.io/syzkaller/syzbot
+
+FROM debian:bullseye
+
+RUN apt-get update
+RUN DEBIAN_FRONTEND=noninteractive apt-get install -y -q \
+ # Build essentials:
+ gcc g++ binutils make bazel-bootstrap golang-go \
+ clang clang-format clang-tidy \
+ # Some common utilities:
+ unzip curl sudo psmisc nano vim git bzip2 dh-autoreconf software-properties-common \
+ # These are needed to build Linux kernel:
+ flex bison bc gawk dwarves texinfo texi2html lzop lbzip2 \
+ zlib1g-dev libelf-dev libncurses-dev libmpc-dev libssl-dev \
+ # These are required to build images:
+ grub-efi grub-pc-bin \
+ # This is required to run alien arch binaries in pkg/cover tests:
+ qemu-user \
+ # These are required to run foreign arch kernels:
+ qemu-utils qemu-system-misc qemu-system-x86 qemu-system-arm qemu-system-aarch64 \
+ qemu-system-s390x qemu-system-mips qemu-system-ppc \
+ # Cross-compilation:
+ g++-arm-linux-gnueabi g++-aarch64-linux-gnu g++-powerpc64le-linux-gnu \
+ g++-mips64el-linux-gnuabi64 g++-s390x-linux-gnu g++-riscv64-linux-gnu \
+ libc6-dev-i386 lib32gcc-10-dev lib32stdc++-10-dev
+
+RUN echo "export PS1='\n\W🤖 '" >> /root/.bashrc
+RUN echo "export EDITOR=nano" >> /root/.bashrc