Files
docker-debian-builder/Dockerfile

109 lines
4.5 KiB
Docker

FROM ich777/debian-baseimage
LABEL maintainer="admin@minenet.at"
RUN echo "deb http://deb.debian.org/debian bullseye-backports main contrib non-free" >> /etc/apt/sources.list && \
apt-get update && \
apt-get -y install --no-install-recommends curl screen qtchooser libqt5core5a && \
curl -sL https://deb.nodesource.com/setup_16.x | bash - && \
apt-get -y install nodejs && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install nano make gcc-12 bison flex bc libelf-dev squashfs-tools patch build-essential kmod cpio libncurses5-dev python3 python3-pip unzip rsync git curl bmake lsb-release libseccomp-dev libcap-dev pkg-config patchutils uuid-dev libblkid-dev libssl-dev dh-autoreconf libproc-processtable-perl beep zip libibmad-dev python3-dev python3-setuptools gperf openssh-server ninja-build libglib2.0-0 libudev-dev cmake udev libpolkit-gobject-1-dev libumockdev-dev docbook-xml libneon27-gnutls-dev jq python3-simplejson libfuse-dev iputils-ping tidy check libbsd-dev libpam0g-dev docbook2x libaio-dev python3-mesonpy xz-utils libdbus-1-dev && \
cd /tmp && \
wget -q -nc --show-progress --progress=bar:force:noscroll -O go.tar.gz https://go.dev/dl/go1.22.2.linux-amd64.tar.gz && \
tar -C /usr/local -xvzf go.tar.gz && \
export PATH=$PATH:/usr/local/go/bin && \
rm -R /tmp/go* && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
rm /var/lib/sgml-base/supercatalog && \
apt-get -y install zlib1g-dev libbz2-dev liblzma-dev libreadline6-dev libsqlite3-dev libssl-dev libgdbm-dev liblzma-dev tk8.6-dev lzma lzma-dev libgdbm-dev libcairo2-dev python3-dev libgirepository1.0-dev python3-cairo-dev libgdbm-compat-dev python3-wheel && \
rm -rf /var/lib/apt/lists/*
#RUN rm -R /lib/x86_64-linux-gnu/liblzma.* && \
# cd /tmp && \
# wget -q -nc --show-progress --progress=bar:force:noscroll -O /tmp/xz.tar https://github.com/ich777/runtimes/raw/master/xz/xz.tar && \
# tar -C / -xvf /tmp/xz.tar && \
# rm -R /tmp/xz.tar
RUN apt-get update && \
apt-get -y install libgtk2.0-dev liblablgtk2-ocaml liblablgtk-extras-ocaml-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install libssl-dev xorg-dev libvncserver-dev sshpass && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install libkmod-dev libproc2-0 libdw-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install libxcb-dri2-0-dev libva-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install qt5-qmake qtscript5-dev libqt5svg5-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install libasound-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install yasm libx264-dev libx265-dev && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install nasm iasl && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && \
apt-get -y install libpci-dev libnl-3-dev libnl-genl-3-dev gettext libgettextpo-dev autopoint gettext libncursesw5-dev libtool-bin autoconf-archive && \
rm -rf /var/lib/apt/lists/*
#RUN apt-get update && \
# apt-get -y install net-tools libjson-glib-dev expect gawk socat gnutls-bin python nasm iasl && \
# mkdir -p /tmp/pkgs && cd /tmp/pkgs && \
# wget http://ftp.debian.org/debian/pool/main/libt/libtpms/libtpms-dev_0.9.2-3_amd64.deb && \
# wget http://ftp.debian.org/debian/pool/main/libt/libtpms/libtpms0_0.9.2-3_amd64.deb && \
# dpkg -i libtpms0_0.9.2-3_amd64.deb && \
# dpkg -i libtpms-dev_0.9.2-3_amd64.deb && \
# rm -rf /tmp/pkgs && \
# rm -rf /var/lib/apt/lists/*
RUN mkdir -p /run/sshd && \
rm -v /etc/ssh/ssh_host_* && \
sed -i "/#Port 22/c\Port 8022" /etc/ssh/sshd_config && \
sed -i "/#ListenAddress 0.0.0.0/c\ListenAddress 0.0.0.0" /etc/ssh/sshd_config && \
sed -i "/#HostKey \/etc\/ssh\/ssh_host_rsa_key/c\HostKey \/root\/.ssh\/ssh_host_rsa_key" /etc/ssh/sshd_config && \
sed -i "/#HostKey \/etc\/ssh\/ssh_host_ecdsa_key/c\HostKey \/root\/.ssh\/ssh_host_ecdsa_key" /etc/ssh/sshd_config && \
sed -i "/#HostKey \/etc\/ssh\/ssh_host_ed25519_key/c\HostKey \/root\/.ssh\/ssh_host_ed25519_key" /etc/ssh/sshd_config && \
sed -i "/#PermitRootLogin prohibit-password/c\PermitRootLogin yes" /etc/ssh/sshd_config
COPY makepkg /sbin/makepkg
ENV DATA_DIR="/home/debian"
ENV ROOT_PWD="password"
ENV PATH="$PATH:/usr/local/go/bin"
ENV UID=99
ENV GID=100
ENV UMASK=0000
ENV DATA_PERM=770
ENV USER="debian"
RUN mkdir -p $DATA_DIR && \
useradd -d $DATA_DIR -s /bin/bash $USER && \
chown -R $USER $DATA_DIR && \
ulimit -n 2048
ADD /scripts/ /opt/scripts/
RUN chmod -R 770 /opt/scripts/ && \
chmod +x /sbin/makepkg
#Server Start
ENTRYPOINT ["/opt/scripts/start.sh"]