# Playground bootstrap

## Bitcoin playground repository

Abbiamo preparato un repository Git che contiene i file necessari al bootstrap:

```
git clone https://github.com/bitcoin-dalla-teoria-alla-pratica/bitcoin-in-action-playground.git
```

## Bitcoin core

{% hint style="info" %}
Per permettervi di utilizzare la versione desiderata di Bitcoin core abbiamo lasciato a voi l'onere di scaricarla.
{% endhint %}

Trovate tutte le release di Bitcoin core in [questa directory](https://bitcoincore.org/bin/).\
Essendo i container ambienti linux l'archivio che dovete scaricare e' denominato dal suffisso *x86\_64-linux-gnu.tar.gz*; se avete un processore con architettura diversa la parte iniziale del suffisso cambia.

Il contenuto estratto dall'archivio inseritelo nell'apposita cartella bitcoin-core all'interno del repository clonato.

![](https://852358698-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQKJKgcTd2_-nxzyaak%2F-MQKRcBXyUMROzebz_O9%2F-MQKVzXfkQctwKFhDMCx%2Fimage.png?alt=media\&token=dd029844-2c33-40a7-88af-1745ca2b34d4)

## Fuoco alle polveri!

Adesso sara' sufficiente avviare

```bash
docker-compose up
```

a schermo vedrete comparire molti messaggi di log, non preoccupatevi e' tutto ok.

![Quando gli unici messaggi di log, ogni \~5s, sono questi e' pronto.](https://852358698-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQKJKgcTd2_-nxzyaak%2F-MQRo5skHaWAaKPNuQWT%2F-MQRqaLRJocAUWnmWWCa%2Fimage.png?alt=media\&token=b146f9c5-83a1-4544-ad62-62cfb92d2ede)

Per verificare il funzionamento cliccate *Bitcoin regtest explorer* qui di fianco.

{% hint style="info" %}
L'explorer non mostrera' nessuna informazione riguardante blocchi o transazioni perche' la blockchain e' vuota!
{% endhint %}

> Il comando `docker-compose up` svolge alcuni step che richiedono tempo, \~3/5min,  eg. compilazione di [btcdeb](https://github.com/kallewoof/btcdeb) e build di [blockchain-reader](https://playground.bitcoininaction.com/playground-overview#blockchain-reader).

> Quando volete fermare i container del playground evitate di utilizzare `docker-compose down` e successivo `docker-compose up`.\
> Stoppate i container con `CTRL+C` oppure `docker-compose stop` e successivo `docker-compose start`.

> Quando utilizzate `docker-compose start`, se volete agganciare nuovamente l'*stdout* dei container potete usare `docker-compose logs -f`
