2024-07-13 16:28:34 +02:00
|
|
|
FROM debian:bookworm
|
|
|
|
|
|
|
|
ARG KUBE_RELEASE=v1.30.2
|
2024-07-13 18:32:28 +02:00
|
|
|
ARG YQ_VERSION=v4.44.2
|
2024-07-15 23:16:25 +02:00
|
|
|
ARG NODE_VERSION=20.x
|
2024-07-18 15:57:53 +02:00
|
|
|
ARG PNPM_VERSION=v9.5.0
|
2024-07-29 00:10:36 +02:00
|
|
|
ARG UBUNTU_CODENAME=jammy
|
2024-07-13 16:28:34 +02:00
|
|
|
|
|
|
|
RUN set -eux; \
|
|
|
|
apt-get update; \
|
|
|
|
apt-get install -y --no-install-recommends \
|
|
|
|
ca-certificates \
|
|
|
|
curl \
|
|
|
|
git \
|
2024-07-29 00:10:36 +02:00
|
|
|
gpg \
|
2024-07-13 16:28:34 +02:00
|
|
|
openssh-client \
|
|
|
|
; \
|
|
|
|
install -m 0755 -d /etc/apt/keyrings; \
|
2024-07-29 00:10:36 +02:00
|
|
|
curl -sSL "https://keyserver.ubuntu.com/pks/lookup?fingerprint=on&op=get&search=0x6125E2A8C77F2818FB7BD15B93C4A3FD7BB9C367" \
|
|
|
|
> /etc/apt/keyrings/ansible.asc \
|
|
|
|
; \
|
|
|
|
echo \
|
|
|
|
"deb [signed-by=/etc/apt/keyrings/ansible.asc] \
|
|
|
|
http://ppa.launchpad.net/ansible/ansible/ubuntu \
|
|
|
|
$UBUNTU_CODENAME main" \
|
|
|
|
> /etc/apt/sources.list.d/ansible.list; \
|
2024-07-13 16:28:34 +02:00
|
|
|
curl -sSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc; \
|
|
|
|
chmod a+r /etc/apt/keyrings/docker.asc; \
|
|
|
|
echo \
|
|
|
|
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \
|
|
|
|
https://download.docker.com/linux/debian \
|
|
|
|
bookworm stable" \
|
|
|
|
> /etc/apt/sources.list.d/docker.list; \
|
|
|
|
apt-get update; \
|
|
|
|
apt-get install -y --no-install-recommends \
|
2024-07-29 00:10:36 +02:00
|
|
|
ansible \
|
2024-07-13 16:28:34 +02:00
|
|
|
docker-ce-cli \
|
|
|
|
docker-buildx-plugin \
|
|
|
|
docker-compose-plugin \
|
|
|
|
; \
|
|
|
|
curl --silent --location "https://dl.k8s.io/release/$KUBE_RELEASE/bin/linux/amd64/kubectl" \
|
|
|
|
| install --owner=root --group=root --mode=0755 /dev/stdin /usr/local/bin/kubectl \
|
|
|
|
; \
|
2024-07-13 18:32:28 +02:00
|
|
|
curl --silent --location "https://github.com/mikefarah/yq/releases/download/$YQ_VERSION/yq_linux_amd64.tar.gz" \
|
|
|
|
| tar --extract --gzip --to-stdout ./yq_linux_amd64 \
|
|
|
|
| install --owner=root --group=root --mode=0755 /dev/stdin /usr/local/bin/yq \
|
|
|
|
; \
|
2024-07-15 23:16:25 +02:00
|
|
|
curl --silent --location "https://deb.nodesource.com/setup_$NODE_VERSION" | bash; \
|
|
|
|
apt-get install -y --no-install-recommends nodejs; \
|
2024-07-18 15:57:53 +02:00
|
|
|
corepack install --global pnpm@$PNPM_VERSION; \
|
|
|
|
corepack enable pnpm; \
|
2024-07-13 16:28:34 +02:00
|
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
# References:
|
2024-07-29 00:10:36 +02:00
|
|
|
# - ansible: https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html#installing-ansible-on-debian
|
2024-07-13 16:28:34 +02:00
|
|
|
# - docker: https://docs.docker.com/engine/install/debian/#install-from-a-package
|
2024-08-02 13:34:49 +02:00
|
|
|
# - kubectl: https://kubectl.docs.kubernetes.io/installation/kubectl/binaries/
|
2024-07-15 23:16:25 +02:00
|
|
|
# - node: https://github.com/nodesource/distributions#installation-instructions-deb
|
2024-08-02 13:34:49 +02:00
|
|
|
# - pnpm: https://nodejs.org/api/corepack.html#upgrading-the-global-versions
|
|
|
|
# - yq: https://github.com/mikefarah/yq?tab=readme-ov-file#install
|