# Installazione

Installare il modulo nel vostro negozio Magento 2 è molto semplice ma bisogna tener presente alcuni passi necessari.

{% hint style="info" %}
Prima di ogni installazione e modifica strutturale di Magento, **è caldamente consigliato effettuare un backup dei dati e dei files** ed accertarsi di aver effettuato un backup corretto. Solo dopo tale operazione potrete effettuare l'**installazione prima nel vostro ambiente di sviluppo** e successivamente nel vostro ambiente di produzione.
{% endhint %}

### Installazione via Shell

Se si desidera installare il modulo via shell bisogna eseguire il seguente comando dalla root di Magento.

```
composer config repositories.core vcs git@bitbucket.org:shinesoftware/core.git
composer config repositories.sdi vcs git@bitbucket.org:shinesoftware/sdi.git
composer require shinesoftware/core:dev-master
composer require shinesoftware/sdi:dev-master
```

All'esecuzione del comando il software *composer* avvierà la procedura di recupero del *repository* presso bitbucket.org.

{% hint style="info" %}
Bisogna fare attenzione all'ultimo comando che determina la versione da scaricare. Verrà sempre installata l'ultima versione del modulo ma nello stesso tempo bisogna fare attenzione alle dipendenze da installare. Vedi capitolo [dipendenze](https://docs.sdi.shinesoftware.it/setup/dipendenze).
{% endhint %}

**Per poter connettere il vostro composer al repository ufficiale serve una chiave SSH valida che permetterà al sistema Bitbucket.org di inviarvi il pacchetto.**

{% hint style="info" %}
Per poter recuperare la chiave pubblica in un server unix-like dovrete eseguire il seguente comando nel terminale linux:

cat \~/.ssh/id\_rsa.pub
{% endhint %}

> Dopo aver copiato la chiave pubblica dovrete aprire una segnalazione su <https://shinesoftware.it/> e richiedere la registrazione della chiave pubblica per il dominio indicato in fase di acquisto. **La chiave pubblica deve essere inviata nella segnalazione** completa e senza alcuna modifica.

{% hint style="info" %}
Molte volte le chiavi pubbliche di un server vengono registrate in bitBucket e non possono essere utilizzate anche per il suddetto uso.&#x20;
{% endhint %}

In questi casi bisogna creare una nuova chiave ed utilizzarla all'aggiornamento del modulo attivandola con i seguenti comandi:

```
ssh-keygen << creare una chiave con il nome id_shinesoftware
cat ~/.ssh/id_shinesoftware.pub << chiave da inviare alla shinesoftware
eval $(ssh-agent) << attivazione dell'agente ssh
ssh-add ~/.ssh/id_shinesoftware << attivazione della nuova chiave nel vostro server
```
