Webbplatssökning

Toolbx: Hantera flera utvecklingscontainer i Fedora


Modern Linux-utveckling har gått bortom det traditionella tillvägagångssättet att installera allt direkt på ditt system. Du har nu tillgång till verktyg som hjälper dig skapa isolerade utvecklingsmiljöer utan att behöva hantera överhettningen från fullständiga virtuella maskiner eller komplexiteten med manuell containerhantering.

Det här är där Fedora Toolbx kommer in i bilden – ett verktyg som gör det enkelt att skapa containeriserade utvecklingsmiljöer samtidigt som upplevelsen hålls lika smidig som att arbeta direkt på ditt värdsystem.

I den här guiden kommer du att lära dig hur du ställer in och använder Fedora Toolbx för att skapa utvecklingsmiljöer som är isolerade, reproducerbara och lätta att hantera. Du får utforska hur Toolbx hjälper dig att arbeta med flera projekt med konfliktande beroenden samtidigt som ditt grundsystem hålls rent och organiserat.

Guiden tar dig igenom grunderna i Toolbx med enkla och praktiska förklaringar. Först lär du dig vad Toolbx är och varför du behöver det, sedan går du vidare till att installera och konfigurera det på ditt Fedora-system. Därefter får du skapa din första utvecklingscontainer och förstå hur du effektivt hanterar flera miljöer.

De sista avsnitten visar dig vanliga arbetsflöden och bästa praxis som hjälper dig att få ut det mesta av Toolbx i ditt dagliga utvecklingsarbete.

Observera: Toolbx utvecklades ursprungligen för Fedora och fungerar bäst på Fedora-baserade system, även om du kan använda det på andra moderna Linux-distributioner också, men denna guide fokuserar främst på Fedora.

Att förstå Toolbx: Vad som gör det annorlunda

Innan du börjar arbeta med Toolbx är det viktigt att förstå vad det faktiskt gör och varför du behöver det i din utvecklingsprocess.

Toolbx skapar containeriserade miljöer med Podman, som är en container-motor lik Docker men fungerar utan en daemon.

Det som gör Toolbx unikt är hur tätt det integrerar dessa containrar med ditt värdsystem, vilket ger dig en smidig utvecklingsupplevelse som inte känns begränsande som traditionella containrar.

När du arbetar med Toolbx-containrar får du flera viktiga fördelar som gör ditt utvecklingsarbete enklare:

  • Sömlös åtkomst till hemkatalog – Din hemkatalog monteras automatiskt i containern, vilket innebär att dina filer, inställningar och SSH-nycklar är omedelbart tillgängliga utan någon extra konfiguration.
  • Direkt åtkomst till hårdvara – Grafik, ljud och andra enheter fungerar direkt utan att kräva särskild konfiguration eller komplicerade monteringsprocedurer.
  • Värdintegration – Du kan köra grafiska applikationer, få tillgång till nätverket och interagera med ditt system precis som om du arbetade direkt på ditt värdsystem istället för i en container.

Du kan tänka på Toolbx som att skapa en skyddad “bubbla” runt dina utvecklingsverktyg och beroenden. Inuti denna bubbla kan du installera alla paket, bibliotek eller verktyg du behöver för ett specifikt projekt utan att påverka ditt huvudsakliga system.

I de följande avsnitten kommer du att lära dig hur du installerar Toolbx på ditt Fedora-system och börjar skapa dessa isolerade utvecklingsmiljöer.

Installera Toolbx på Fedora

På Fedora Workstation (version 28 och senare) är toolbx förinstallerat, och du kan kontrollera det genom att köra följande kommando.

toolbox --version

Om du ser ett versionnummer är du redo att köra, om Toolbx inte är installerat kan du lägga till det med:

sudo dnf install toolbox

Installera Toolbx på Fedora

Det var allt för installationen. Inga komplicerade konfigurationsfiler, ingen daemon-installation, inga ytterligare beroenden att oroa sig för.

Skapa din första Toolbx-behållare

Att skapa en Toolbx-behållare är en enkel process som du kan slutföra med bara ett kommando, vilket kommer att skapa en standardbehållare baserad på din nuvarande Fedora-version.

Om du till exempel kör Fedora 41 skapar det automatiskt en Fedora 41-behållare åt dig. Första gången du kör det här kommandot laddar Toolbx ner behållarbilden, vilket tar några minuter beroende på din internethastighet.

toolbox create

Skapa din första verktygslådbehållare

När containern har skapats kan du gå in i den genom att köra följande kommando:

toolbox enter

Åtkomst till din Docker-behållare efter skapandet

Du kommer att märka den lilla behållarikonen (⬢) som visas i prompten, vilket indikerar att du är inne i din Toolbx-behållare.

Även om du arbetar i en containeriserad miljö kommer du att märka att din hemkatalog, dina filer och större delen av din värddators miljö fortfarande är lättillgängliga precis som de skulle vara på ditt huvudsakliga system.

Att använda olika Fedora-versioner

Ibland behöver du arbeta med en specifik version av Fedora, kanske kör dina produktionsservrar en äldre utgåva, eller så vill du testa kompatibilitet med den senaste versionen innan du uppgraderar ditt huvudsystem.

Toolbx gör detta enkelt med flaggan --release eller -r:

toolbox create --release 39 fedora39-container
toolbox create --release 41 testing-fedora41

Du kan till och med använda containers från äldre Fedora-versioner medan du kör en nyare version på ditt värdsystem, vilket ger dig ett bekvämt sätt att upprätthålla kompatibilitet med olika miljöer.

Testa din container-miljö

För att verifiera att du faktiskt är inne i containern och se hur den skiljer sig från ditt värdsystem kan du köra några enkla kommandon, till exempel kontrollera vilka paket som är installerade.

dnf list installed | wc -l

Du kan också kontrollera containerens värdnamn:

hostname

För att se din nuvarande arbetskatalog och verifiera att din hemkatalog är åtkomlig:

pwd
ls -la

Du kommer märka att du är i din hemkatalog med alla dina bekanta filer och mappar synliga, även om du är inne i en container.

Kör kommandon inuti en körande Toolbox-behållare

Installera programvara i din behållare

Nu när du är inne i containern kan du installera utvecklingsverktyg utan att påverka ditt värdsystem. Till exempel, om du vill sätta upp en Python-utvecklingsmiljö:

sudo dnf install python3-pip python3-virtualenv git vim -y

Om du lämnar containern och kontrollerar ditt värdsystem kommer dessa paket inte att vara installerade där, de finns endast inom din Toolbx-miljö.

Ställ in en Python-miljö i en Toolbox-behållare

Låt oss prova ett annat exempel med Node.js-utvecklingsverktyg.

sudo dnf install nodejs npm -y
node --version
npm --version

Dessa kommandon installerar Node.js och npm och verifierar sedan installationen genom att kontrollera deras versioner. Denna installation är återigen helt isolerad från ditt värdsystem.

När du är klar med att arbeta i din container kan du avsluta den genom att helt enkelt köra:

exit

Skapa namngivna containrar för olika projekt

Medan standardbehållaren fungerar bra för allmän utvecklingsarbete, behöver du ofta separata behållare för olika projekt eller specifika ändamål. Att skapa namngivna behållare hjälper dig att organisera dina utvecklingsmiljöer mer effektivt och hålla ditt arbete isolerat.

För att skapa namngivna containrar kör du kommandot toolbox create följt av namnet du vill ge din container:

toolbox create python-dev
toolbox create nodejs-project
toolbox create rust-experiments

Var och en av dessa kommandon skapar en separat container med sin egen isolerade miljö. När du vill arbeta på ett specifikt projekt går du in i motsvarande container genom att ange dess namn med kommandot enter:

toolbox enter python-dev

Denna metod hjälper dig att upprätthålla helt isolerade miljöer för olika typer av utvecklingsarbete. Till exempel kan din Python-container köra Python 3.12 med alla moderna beroenden, medan din container för ett äldre projekt kan använda Python 3.8 med äldre bibliotek, och ingen av miljöerna kommer att störa den andra eller påverka ditt värdsystem på något sätt.

Köra grafiska program från Toolbx

Det som gör Toolbx verkligen speciellt är dess förmåga att köra grafiska applikationer smidigt direkt från dina container. Till skillnad från traditionella containrar, som kräver en komplicerad X11-vidarebefordringsinställning och konfiguration.

Toolbx hanterar all visningsintegration automatiskt, vilket gör att det känns som att du kör applikationer direkt på ditt värdsystem.

För att se hur detta fungerar i praktiken, låt oss installera och köra en grafisk textredigerare som ett exempel.

toolbox enter
sudo dnf install gedit -y

När installationen är klar kan du starta redigeraren.

gedit &

Gedit-fönstret öppnas på ditt skrivbord precis som om du hade startat det från ditt värdsystem. Du kan skapa, redigera och spara filer, och allt fungerar exakt som du förväntar dig.

Ampersandet (&) i slutet kör applikationen i bakgrunden, vilket låter dig fortsätta använda din terminal medan den grafiska applikationen är öppen.

Köra GUI-appar inuti Toolbx-containrar

Hantera flera Toolbx-behållare

När du skapar fler containrar för olika projekt behöver du ett sätt att hålla reda på dem och hantera dem effektivt. Toolbx erbjuder flera kommandon som hjälper dig att visa, kontrollera och organisera dina containeriserade miljöer.

Lista dina behållare

För att se alla containrar du har skapat, kör kommandot lista:

toolbox list

Visa alla verktygslådesbehållare på ditt system

Från denna utskrift kan du se vilka containrar som körs just nu och vilka som har avslutats.

Kontrollerar behållardetaljer

Om du vill ha mer detaljerad information om en specifik container kan du använda Podman direkt eftersom Toolbx-containers är vanliga Podman-containers:

podman ps -a

Du kan också inspektera en specifik container för att se dess fullständiga konfiguration:

podman inspect python-dev

Få detaljerad information om en Toolbx-behållare med Podman

Stoppa och starta körande containrar

När du är klar med att arbeta i en container och vill frigöra systemresurser kan du stoppa den uttryckligen.

podman stop python-dev

Du kan verifiera att containern har stoppat genom att köra listkommandot igen:

toolbox list

Du kommer att se att behållarens status har ändrats från körs till avslutad.

Stoppa körande Toolbx-containrar

Om du har en container som för närvarande är stoppad och du vill använda den igen, behöver du bara gå in i den, och Toolbx startar den automatiskt åt dig:

toolbox enter python-dev

Ta bort behållare du inte längre behöver

Med tiden kan du samla på dig containrar som du inte längre använder, och dessa containrar tar upp diskutrymme på ditt system. När du är säker på att du inte behöver en container längre kan du ta bort den helt med kommandot rm:

toolbox rm python-dev

Innan du tar bort containern, ber Toolbx dig att bekräfta åtgärden, skriv helt enkelt y för att bekräfta, och Toolbx tar bort containern tillsammans med alla paket och konfigurationer du installerat i den.

Viktig notering: Att ta bort en container raderar alla paket, systemkonfigurationer och all data som lagras i containerns filsystem, men dina filer i hemkatalogen förblir helt säkra.

Efter att ha tagit bort kan du kontrollera diskanvändningen för alla dina containers, bilder och volymer med:

podman system df

Visa diskutrymme som används av Toolbx-resurser

Om du vill frigöra diskutrymme genom att ta bort alla stoppade containers och oanvända bilder kan du köra ett städkommando:

podman system prune
Slutsats

Toolbx ger dig ett kraftfullt sätt att hantera utvecklingsmiljöer på ditt Fedora-system utan komplexiteten hos traditionella virtuella maskiner.

I hela den här guiden har du lärt dig hur man skapar isolerade containers, kör grafiska applikationer och hanterar flera utvecklingsmiljöer samtidigt som du håller ditt basystem rent.

Tyckte du att den här guiden var hjälpsam? Dela din erfarenhet, dina frågor eller tips i kommentarerna nedan. Din feedback hjälper oss att förbättra vårt innehåll och stödjer andra läsare på deras Toolbx-resa.