Ambiente isolato per stack di software

6

Ero sicuro che avrei trovato questa domanda, ma non potevo. Come creare un ambiente di sviluppo isolato? In altre parole, una sandbox, in cui posso installare diverse combinazioni di server web, database, altri pacchetti software e giocare con loro, senza ingombrare i miei pacchetti di sistema e senza scaricare manualmente pacchetti dai siti web ufficiali. Qualcosa per stack di software come virtualenv + pip è per Python.

Prima ho provato ad installare i SO all'interno di QEMU / KVM, ma questo è eccessivo e un po 'complicato (non è possibile impostare il bridging, ad esempio). È possibile creare ambienti virtuali isolati senza eseguire macchine virtuali con sistemi operativi completi?

Uso Debian GNU / Linux.

Modifica (01.08.12): Una domanda simile su Unix.SE con risposte più elaborate - link

    
posta Mirzhan Irkegulov 01.05.2012 - 10:27
fonte

2 risposte

1

Potresti trovare Moduli ambientali che vale la pena guardare.

Lo utilizziamo estensivamente per offrire agli utenti l'accesso a un'ampia varietà di applicazioni, senza che queste app si trovino sul loro percorso della riga di comando, a meno che non ne abbiano bisogno.

Lo usiamo anche per dare alle persone l'opzione di quale versione del software vogliono usare. Ad esempio, abbiamo a disposizione varie versioni di python:

$ python -V
Python 2.4.3
$ module avail python

----------------------- /apps/Modules/modulefiles -----------------------
python/2.6                   python/2.7.2-64
python/2.6.2                 python/3.2
python/2.6.6(default)        python/3.2.0
python/2.7                   python/3.2.2
python/2.7.1                 python/2.7.2
$ module load python
$ python -V
Python 2.6.6
$ module load python/2.7.1
$ python -V
Python 2.7.1
$

Modifica solo le variabili d'ambiente, ma potrebbe essere solo il interruttore di contesto di cui hai bisogno.

    
risposta data 01.05.2012 - 15:35
fonte
3

In una certa misura puoi raggiungere i tuoi obiettivi sotto Linux / Unix in chroot 'ed ambienti e jails .

Tuttavia consiglio vivamente di utilizzare macchine virtuali.

Potresti trovare questa tabella su wikipedia. Sembra che OpenVZ possa valere la pena dare un'occhiata. Per Windows, sanboxie potrebbe anche valere una valutazione.

    
risposta data 01.05.2012 - 10:35
fonte