docker-scripts/linux/advanced/python/main/3.8/Dockerfile

295 lines
10 KiB
Docker
Raw Normal View History

FROM python:3.8-bookworm
2022-06-02 16:43:01 +03:00
ARG DEBIAN_FRONTEND=noninteractive
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
LABEL org.opencontainers.image.vendor="EpicMorg DevTeam, developer@epicm.org"
LABEL org.opencontainers.image.authors="STAM, kasthack, Aleks-Z"
LABEL org.opencontainers.image.source="https://github.com/EpicMorg/docker"
LABEL org.opencontainers.image.url="https://github.com/EpicMorg/docker"
LABEL donate.crypto.TON="EQDvHXRK-K1ZieJhgTD9JZQk7xCnWzRbctYnUkWq1lZq1bUg"
LABEL donate.crypto.ETH="0x26a8443a694f08cdfec966aa6fd72c45068753ec"
LABEL donate.crypto.BTC="bc1querz8ug9asjmsuy6yn4a94a2athgprnu7e5zq2"
LABEL donate.crypto.LTC="ltc1qtwwacq8f0n76fer2y83wxu540hddnmf8cdrlvg"
LABEL donate.crypto.NVC="4SbMynYETyhmKdggu8f38ULU6yQKiJPuo6"
LABEL donate.crypto.DOGE="DHyfE1CZzWtyaQiaMmv6g4KvXVQRUgrYE6"
LABEL donate.crypto.PPC="pQWArPzYoLppNe7ew3QPfto1k1eq66BYUB"
LABEL donate.crypto.RVN="R9t2LKeLhDSZBKNgUzSDZAossA3UqNvbV3"
LABEL donate.crypto.ZEC="t1KRMMmwMSZth8vJcd2ZHtPEFKTQ74yVixE"
LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4wQxoVfEJoW7LBhdQMP9cFhZQpJr6xvg7esHLdCbb1"
2022-06-02 16:43:01 +03:00
##################################################################
# prepare system
##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
##################################################################
# sources list
##################################################################
RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/locale.gen
COPY etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/sources.list /etc/apt/sources.list
2022-06-02 17:28:54 +03:00
COPY etc/locale.gen /etc/locale.gen
2022-06-02 16:43:01 +03:00
RUN apt-get update && \
apt-get upgrade -y && \
apt-get dist-upgrade -y
##################################################################
# installing utils
##################################################################
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get install -y --allow-unauthenticated \
apt-transport-https \
apt-utils \
gnupg \
gnupg1 \
gnupg2 \
aptitude \
bash \
binutils \
console-cyrillic \
ca-certificates \
locales \
software-properties-common \
sudo
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
2022-09-09 19:58:47 +03:00
RUN update-ca-certificates
2022-06-02 16:43:01 +03:00
##################################################################
# perforce client binary
##################################################################
ARG P4_VERSION=r23.2
ARG P4_DOWNLOAD_URL=http://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
2022-06-02 16:43:01 +03:00
##################################################################
# 7z official binary
##################################################################
ARG SZ_VERSION=7z2400
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
2022-06-02 16:43:01 +03:00
##################################################################
# LazyGit official binary
##################################################################
ARG LZGIT_VERSION=0.40.2
ARG LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz
2022-06-02 16:43:01 +03:00
##################################################################
# update lists
##################################################################
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get update
##################################################################
# installing utils
##################################################################
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get install -y --allow-unauthenticated \
bzip2 \
acl \
aptitude \
bzip2 \
cifs-utils \
clzip \
2022-06-02 16:43:01 +03:00
cmatrix \
cmatrix-xfont \
cron \
curl \
cvs \
2022-06-02 16:43:01 +03:00
dos2unix \
ffmpeg \
fontconfig \
git \
git-crypt \
2022-06-02 16:43:01 +03:00
git-cvs \
git-doc \
git-email \
git-extras \
git-flow \
2022-06-02 16:43:01 +03:00
git-ftp \
git-lfs \
git-mediawiki \
2022-06-02 16:43:01 +03:00
gnupg \
gnupg2 \
graphicsmagick \
gzip \
htop \
iftop \
iotop \
iperf \
iperf3 \
iputils-ping \
jq \
kmod \
lbzip2 \
libsvn-java \
libxml2-dev \
libxml2-utils \
libzip4 \
2022-06-02 16:43:01 +03:00
locales \
logrotate \
2022-06-02 16:43:01 +03:00
lsb-release \
lsof \
lvm2 \
2022-06-02 16:43:01 +03:00
lynx \
lzip \
lzma \
2022-06-02 16:43:01 +03:00
lzop \
mc \
mercurial \
nano \
neofetch \
nfs-common \
2022-06-02 16:43:01 +03:00
nload \
nmap \
openssl \
p7zip-full \
p7zip-rar \
parted \
pbzip2 \
perl \
pev \
plzip \
portmap \
procps \
python3-all \
python3-pip \
2022-06-02 16:43:01 +03:00
rar \
rclone \
rename \
rsync \
2022-06-02 16:43:01 +03:00
screenfetch \
smbclient \
ssl-cert \
2022-06-02 16:43:01 +03:00
subversion \
subversion-tools \
sudo \
sysstat \
2022-06-02 16:43:01 +03:00
telnet \
tini \
2022-06-02 16:43:01 +03:00
tmux \
tree \
unrar \
2022-06-02 16:43:01 +03:00
util-linux \
uuid-runtime \
wget \
xz-utils \
zip
2022-06-02 16:43:01 +03:00
##################################################################
# installing fs-tools
##################################################################
2022-10-16 13:56:59 +03:00
#RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
# apt-get install -y --allow-unauthenticated \
# btrfs-progs \
# exfat-utils \
# e2fsprogs \
# f2fs-tools \
# dosfstools \
# hfsutils \
# hfsprogs \
# jfsutils \
# mdadm \
# util-linux \
# cryptsetup \
# lvm2 \
# nilfs-tools \
# ntfs-3g \
# reiser4progs \
# reiserfsprogs \
# udftools \
# xfsprogs \
# xfsdump
2022-06-02 16:43:01 +03:00
2023-01-20 19:05:33 +03:00
##################################################################
# git fresh binary
##################################################################
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \
apt-get install -y --allow-unauthenticated \
git && \
git --version
2022-06-02 16:43:01 +03:00
##################################################################
# git-lfs official binary
##################################################################
#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list
RUN apt-get update && \
apt-get install -y --allow-unauthenticated \
git \
git-lfs && \
git --version && \
2022-11-14 22:12:31 +03:00
git-lfs install --skip-repo && \
2022-06-02 16:43:01 +03:00
git-lfs --version
##################################################################
# gh official binary
##################################################################
2022-09-09 20:32:16 +03:00
RUN wget -c https://cli.github.com/packages/githubcli-archive-keyring.gpg -O /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \
2022-06-02 16:43:01 +03:00
apt-get install -y --allow-unauthenticated \
gh && \
gh --version
##################################################################
# Install p4client
##################################################################
RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue -P /usr/bin ${P4_DOWNLOAD_URL} && \
chmod +x /usr/bin/p4
##################################################################
# Install 7z official binary
##################################################################
RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue -O /tmp/7z.tar.xz ${SZ_DOWNLOAD_URL} && \
mkdir -p /tmp/7z && \
tar -xf /tmp/7z.tar.xz -C /tmp/7z && \
chmod +x /tmp/7z/7zz && \
mv -fv /tmp/7z/7zz /usr/bin/ && \
7zz | head -4 && \
7z | head -4
##################################################################
# Install LazyGit official binary
##################################################################
RUN wget --no-check-certificate -nv --random-wait --retry-connrefused --continue -O /tmp/lazygit.tar.xz ${LZGIT_DOWNLOAD_URL} && \
mkdir -p /tmp/lazygit && \
tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \
chmod +x /tmp/lazygit/lazygit && \
mv -fv /tmp/lazygit/lazygit /usr/bin/ && \
echo "lazygit version:" && \
lazygit --version
##################################################################
# Generate ssl key
##################################################################
2022-06-05 12:18:03 +03:00
#RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096
2022-06-02 16:43:01 +03:00
##################################################################
# update locales
##################################################################
RUN locale-gen
##################################################################
# cleanup
##################################################################
RUN apt-get purge policykit-1 -y && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb