Epic 1

2 minute read
🎯 Cel epiki
Stworzenie wirtualnej maszyny dla zespołu deweloperskiego, który zawiera niezbędne narzędzia do pracy.
- Utworzenie w
vagrant registry
obrazuUbuntu 24.10
- Wykorzystanie
vagrant
do provisioning`u maszyny wirtualnej.
--- config: theme: neo layout: dagre look: neo --- flowchart LR subgraph s1["Przygotowanie obrazu"] n5@{ label: "Przygotowanie maszyny<br style=\"--tw-scale-x:\">wirtualnej na virtualbox" } n6@{ label: "<span style=\"padding-left:\">Utworzenie box<br></span><span style=\"padding-left:\">(vagrant package)</span>" } n7@{ label: "Wysłanie do<br style=\"--tw-scale-x:\">Vagrant box Registry" } end subgraph s2["Użycie obrazu (vagrant up)"] n8["vagrant up"] n9["run bootstrap.bash"] n11["bash scripts"] end n5 --> n6 n6 --> n7 s1 --> s2 n8 --> n9 s2 --> n10("Ready to use") n9 --> n11 n5@{ shape: rect} n6@{ shape: rect} n7@{ shape: rect} n9@{ shape: lean-r} n11@{ shape: procs}
Przygotowanie obrazu
- Utworzenie projektu w
Vagrant Box Registries
- Instalacja manualna
Ubuntu server 24.10
z użytkownikiemvagrant
passwordvagrant
- Wykonanie skryptu poleceń na koncie
vagrant
sudo apt-get update sudo apt-get dist-upgrade -y sudo apt install -y openssh-server curl wget sudo sudo apt install -y build-essential dkms linux-headers-$(uname -r) mkdir -p /home/vagrant/.ssh curl -fsSL https://raw.githubusercontent.com/hashicorp/vagrant/master/keys/vagrant.pub -o /home/vagrant/.ssh/authorized_keys chown -R vagrant:vagrant /home/vagrant/.ssh chmod 700 /home/vagrant/.ssh chmod 600 /home/vagrant/.ssh/authorized_keys echo "vagrant ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/vagrant
- Przygotowanie maszyny wirtualnej do eksportu
vagrant package --base ubuntu-24.04-base --output ubuntu-24.04.box
- Wysłanie obrazu do
Vagrant box Registry
Przygotowanie maszyny deweloperskiej
- ✅ Przygotowanie Vagrantfile
- ✅ Przygotowanie skryptu bootstrap
- ✅ Przygotowanie skryptu upgrade-ubuntu.bash
- ✅ Przygotowanie skryptu install-packages.bash
- ✅ Przygotowanie skryptu install-hashicorp.bash