Instalar Magento a través del shell

Con la aparición de cada nueva versión, es requisito obligatorio hacer un testeo de una instalación limpia de la plataforma.

Al comienzo no es problema, es simplemente hacer una instalación más. Pero si ya venís con ésta práctica desde la versión 1.0.19870.1, ya te debe resultar casi tedioso el proceso (peor se pone si además de hacerlo en tu pc de desarrollo, también lo hacés en algún servidor).

Normalmente, sin importar que sistema operativo se utilice, los pasos serían:

  1. Descargar el archivo comprimido.
  2. Descomprimir el contenido en una nueva carpeta.
  3. Copiar la nueva carpeta dentro de un virtual host específico o como subcarpeta de un virtual host que ya estemos utilizando.
  4. Crear una nueva base de datos dentro de Mysql.
  5. Borrar archivo comprimido descargado (y carpeta vacía que pudiera haber quedado).
  6. Iniciar proceso de instalación.

Como pasos no son tantos; pero si pueden ser algo molestos si se hacen desde un entorno gráfico, y más si debemos mover los archivos de Magento vía red.

Vamos a ver cómo hacer lo mismo, pero sólo con la consola. En cuanto a los pasos va a resultar muy similar, pero en cuanto a la velocidad (cuando lo apliquen) van a notar una interesante variación en los tiempos que esto les puede llevar.

Primer paso: nos paramos en la carpeta del virtual host y empezamos a descargar el archivo (el número de versión corresponde a lo que hoy hay disponible, eventualmente, tendrán que cambiar ese valor) comprimido.

wget http://www.magentocommerce.com/downloads/assets/1.3.2.3/magento-1.3.2.3.tar.gz

Ahora, descomprimimos lo que acabamos de descargar.

tar -zxvf magento-1.3.2.3.tar.gz

Movemos el contenido de la subcarpeta que se ha creado a la raíz de nuestro host.

mv magento/* magento/.htaccess* .

Asignamos como propietario de todos los archivos, al mismo usuario que ejecuta el servicio web (el nombre de usuario y grupo puede variar según la configuración con la que cuenten, la que sigue es más o menos estándar)

chown -R www-data:www-data ../

Configuramos y bajamos los últimos archivos para la versión.

./pear mage-setup .
./pear install magento-core/Mage_All_Latest-stable

Ahora borramos los archivos temporales y de cache de la instalación.

rm -Rf downloader/pearlib/cache/* downloader/pearlib/download/*

Borramos la subcarpeta que se había creado al descomprimir (y que ahora debiera de estar vacía)

rm -R magento

Borramos el archivo que habíamos descargado.

rm magento-1.3.2.3.tar.gz

Esto es de quisquilloso, pero podemos borrar los archivos de ejemplo que se adjuntan.

rm index.php.sample .htaccess.sample php.ini.sample

Nos conectamos al Mysql que vamos a utilizar.

mysql -u usuario -p -h host

Creamos una base de datos en blanco.

create database magento1323;

Nos desconectamos del Mysql.

\q

Listo, abran su navegador, apunten al sitio y comenzará el instalador.

Existen algunas variantes que permiten, además, hacer la instalación desde la línea de comandos (en lugar de utilizar el browser). No la estoy comentando porque no me ha funcionando en todos los casos (distintos servidores, distintos sistemas operativos), a pesar que la instalación vía navegador siempre finalizó correctamente.

Una vez que empiecen a instalar de ésta forma, estoy casi seguro que no vuelven a tocar el mouse.