Remove Dockerfiles from this repo

This commit is contained in:
2026-02-27 12:11:49 +01:00
parent c5372879c2
commit c071ef1995
4 changed files with 7 additions and 88 deletions

View File

@@ -1,12 +1,14 @@
# Ambiente di test locale per Ansible # Ambiente di test locale per Ansible
Il repository include i Dockerfile per tre immagini Docker basate su Debian 13, Almalinux 9 e Ubuntu 24.04 per riprodurre tramite container i sistemi operativi (attualmente) installati sulle VM in produzione. Il repository include:
- un file di inventario (`inventory/lab/inventory.yml`) pensato per l'utilizzo con i container Docker di test le cui imagini sono definite in un [repository dedicato](/nicolo/ansible-docker);
- un playbook di esempio, ma applicabile in produzione con le dovute modifiche;
- una serie di ruoli possibilmente utili.
Per il corretto funzionamento delle immagini, è necessario che esista una chiave pubblica `id_ansible.pub` nelle rispettive cartelle con i Dockerfile. Questa deve ovviamente corrispondere a una chiave SSH privata `id_ansible_lab` che `inventory.yaml` cerca in `~/.ssh/`. La cartella `inventory` contiene due sottocartelle, `lab` e `prod`, quest'ultima è dedicata all'ambiente di produzione e dovrà ospitare il relativo file YAML di configurazione, non incluso nel versionamento per ovvi motivi.
## Note sparse ## Note sparse su parametri playbook / ruoli
Riguardo il significato di alcuni parametri molto utili presenti tipicamente nei playbook e/o ruoli:
- `become: true` serve per la cosiddetta _privilege escalation_, cioè "dice" ad Ansible di "diventare" (_become_) l'utente `root` (tipicamente invocando `sudo`); - `become: true` serve per la cosiddetta _privilege escalation_, cioè "dice" ad Ansible di "diventare" (_become_) l'utente `root` (tipicamente invocando `sudo`);
- `become_user: <username>` serve per eseguire i comandi definiti da un task (e/o altro?) utilizzando un utente di sistema specifico (`<username>`) diverso da `root`, preferibilmente con privilegi sufficienti (vedi [documentazione](https://docs.ansible.com/projects/ansible/latest/playbook_guide/playbooks_privilege_escalation.html#risks-of-becoming-an-unprivileged-user) per dettagli);
- `update_cache` si riferisce all'esecuzione dell'aggiornamento della liste dei repository di pacchetti di sistema gestite dai _package manager_ prima di invocare un comando di installazione di nuovi pacchetti. - `update_cache` si riferisce all'esecuzione dell'aggiornamento della liste dei repository di pacchetti di sistema gestite dai _package manager_ prima di invocare un comando di installazione di nuovi pacchetti.

View File

@@ -1,29 +0,0 @@
FROM almalinux:9
RUN dnf update -y && \
dnf install -y \
openssh-server \
sudo \
python3
#rm -rf /var/lib/apt/lists/*
RUN mkdir /var/run/sshd
RUN ssh-keygen -A
RUN useradd -m -s /bin/bash nicolo && \
echo "nicolo ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/nicolo
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config
RUN mkdir /home/nicolo/.ssh && \
chmod 700 /home/nicolo/.ssh
COPY id_ansible_lab.pub /home/nicolo/.ssh/authorized_keys
RUN chown nicolo:nicolo -R /home/nicolo/.ssh && chmod 600 /home/nicolo/.ssh/authorized_keys
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

View File

@@ -1,26 +0,0 @@
FROM debian:13
RUN apt-get update && \
apt-get install -y \
openssh-server \
sudo \
python3 \
ca-certificates && \
rm -rf /var/lib/apt/lists/*
RUN useradd -m -s /bin/bash nicolo && \
echo "nicolo ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/nicolo
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config
RUN mkdir /home/nicolo/.ssh && \
chmod 700 /home/nicolo/.ssh
COPY id_ansible_lab.pub /home/nicolo/.ssh/authorized_keys
RUN chown nicolo:nicolo -R /home/nicolo/.ssh && chmod 600 /home/nicolo/.ssh/authorized_keys
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

View File

@@ -1,28 +0,0 @@
FROM ubuntu:24.04
RUN apt-get update && \
apt-get install -y \
openssh-server \
sudo \
python3 \
ca-certificates && \
rm -rf /var/lib/apt/lists/*
RUN mkdir /var/run/sshd
RUN useradd -m -s /bin/bash nicolo && \
echo "nicolo ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/nicolo
RUN sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \
sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config
RUN mkdir /home/nicolo/.ssh && \
chmod 700 /home/nicolo/.ssh
COPY id_ansible_lab.pub /home/nicolo/.ssh/authorized_keys
RUN chown nicolo:nicolo -R /home/nicolo/.ssh && chmod 600 /home/nicolo/.ssh/authorized_keys
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]