virtualbox - configurar - comandos vagrant
¿Qué hacen exactamente los comandos de Vagrant? (3)
Estoy de acuerdo con usted en que la documentación en vagrantup.com/v1/docs/index.html es más corta.
Parte de la información puede obtenerse del sistema de ayuda de comando.
Por ejemplo: comando
gem
.Simplemente escriba el comando sin argumentos:
vagrant gem -h
y produce la información que pueda necesitar.vagrant gem
se usa para instalar complementos Vagrant a través del sistema RubyGems. De hecho, lavagrant gem
es solo una interfaz de la interfaz real de lagem
, con la diferencia de que Vagrant establece un directorio personalizado donde se instalan las gemas para que estén aisladas de las gemas de su sistema.Vagrant ssh-config
:Debajo del capó, cuando ejecutas
vagrant ssh
para ssh en VM. Está utilizando su conocida clave ssh. La información en esta clave es proporcionada porvagrant ssh-config
. Esto es útil en caso de que desee cambiar la clave bien conocida de su propia clave privada y preparar cuadros para usarla.También algunas veces, es posible que desee utilizar la automatización basada en ssh con sus máquinas virtuales. En ese caso, saber qué tecla se está utilizando es útil. Puede usar el comando ssh normal -
ssh -i keyfile ..
vagrant status <vmname>
Este comando es un contenedor que proporciona información sobre el estado de vm. Podría estar ejecutándose, guardado y apagado.
vagrant reload
Si realiza algún cambio en la configuración en vagrantfile que debe tener efecto. Es posible que desee volver a cargar la máquina virtual. Reanuda el aprovisionamiento definido en el archivo vagrant a menos que usted no lo solicite también.
No destruye la máquina virtual que ha creado desde un cuadro base. Eso significa que todos los cambios que haya realizado en su máquina virtual, como por ejemplo crear una carpeta en su directorio de usuario estarán allí después de volver a cargar.
Es como reiniciar donde apaga su máquina virtual y luego aplica cierto cambio de configuración que se puede aplicar solo cuando la VM se ha apagado. y luego encenderlo. Ejemplo: como conectar otro disco virtual SATA.
vagrant up
Esto lee su archivo de configuración -
vagrantfile
y luego crea una VM desde el cuadro base. Base Box es como una plantilla. Puede crear muchas máquinas virtuales a partir de él.Del mismo modo, la
vagrant destroy
destruye tu máquina virtual. En este caso, se perderán todos los cambios que haya realizado en su interior. Pero esa es la buena idea de que puede comenzar desde un estado base predefinido cuando crea una nueva máquina virtual.
Realmente me gusta usarlo y he blogueado al respecto .
En resumen, es una buena envoltura sobre las API y Comandos de VirtualBox . Puede echar un vistazo a los comandos de VirtualBox para comprender mejor algunas de las capacidades.
Sorprendentemente, no hay documentación sobre lo que hacen los comandos de Vagrant, aparte de las referencias a lo largo del tutorial de "inicio".
Lo que he resuelto hasta ahora:
-
box
- gestionar " boxes " -
destroy
: ¿apaga la máquina virtual y luego elimina su imagen almacenada? -
gem
-
halt
: apagar la máquina virtual -
init
: prepara un directorio con un nuevo archivo Vagrant -
package
: apague la máquina virtual y luego conviértala en un "paquete" que se puede convertir en una caja. (O algo) -
provision
- ejecutar solo la etapa de aprovisionamiento (p. ej., chef, marioneta ...) -
reload
- modificar la configuración de la máquina virtual (por ejemplo, volver a aplicar Vagrantfile), reiniciar la máquina virtual, reprovisionar -
resume
- no suspender (es decir, anular la inhibición) -
ssh
- abre una conexión de shell SSH a la VM -
ssh-config
-
status
-
suspend
- hibernar la máquina virtual -
up
- algunos o todos: copiar una imagen de máquina virtual para crear una nueva máquina virtual, aplicarle configuración, iniciarla
¿Tengo estos derechos? ¿Cuáles son los otros? Todavía no estoy del todo claro sobre la diferencia exacta entre reload
y destroy
/ up
.
No estoy seguro de cuándo cambió, pero la versión actual (1.6.3) tiene una lista adecuada de comandos, y la ejecución vagrant list-commands
ofrece una lista aún más completa:
box manages boxes: installation, removal, etc.
connect connect to a remotely shared Vagrant environment
destroy stops and deletes all traces of the vagrant machine
docker-logs outputs the logs from the Docker container
docker-run run a one-off command in the context of a container
global-status outputs status Vagrant environments for this user
halt stops the vagrant machine
help shows the help for a subcommand
init initializes a new Vagrant environment by creating a Vagrantfile
list-commands outputs all available Vagrant subcommands, even non-primary ones
login log in to Vagrant Cloud
package packages a running vagrant environment into a box
plugin manages plugins: install, uninstall, update, etc.
provision provisions the vagrant machine
rdp connects to machine via RDP
reload restarts vagrant machine, loads new Vagrantfile configuration
resume resume a suspended vagrant machine
rsync syncs rsync synced folders to remote machine
rsync-auto syncs rsync synced folders automatically when files change
share share your Vagrant environment with anyone in the world
ssh connects to machine via SSH
ssh-config outputs OpenSSH valid configuration to connect to the machine
status outputs status of the vagrant machine
suspend suspends the machine
up starts and provisions the vagrant environment
version prints current and latest Vagrant version
Los únicos comandos que quedan fuera de la lista completa al ejecutar vagrant
por sí mismo son los docker y rsync. En mi sistema, de todos modos.
Esa parece ser la respuesta definitiva, ahora.
Realmente es una lástima que a pesar de que los documentos actuales para v1.1 se vean mejor, es mucho menos completo que v1. El credo ''menos es más'' simplemente no funciona en el área de documentación ...
Descubrí que cuando se trata de Vagrantfiles, la descripción más completa se encuentra en los comentarios de un Vagrantfile recién creado, después de inicializar un proyecto vagabundo. Menciona parámetros que no están actualmente en la documentación.