SIGNATE ファンダメンタルズ分析チャレンジの環境構築方法

#1 この記事は何？

SIGNATE ファンダメンタルズ分析チャレンジの環境構築について説明します。

- [SIGNATE ファンダメンタルズ分析チャレンジの説明はこちら](https://japanexchangegroup.github.io/J-Quants-Tutorial/)


#2 どのようにするの？
前提条件:Windows10 Home

## 2-1 Dockerのインストール

(1)Windowsの場合、Docker Desktopをインストールする。

- [Docker Desktop for Windows のインストールの方法はこちら](
https://qiita.com/gahoh/items/7b21377b5c9e3ffddf4a#docker-desktop-for-windows-%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)


注：Windows10 Homeの場合、versionが古いとDocker Desktopがインストールできない。Docker Desktopがインストール可能なversion(例: バージョン20H2 OSビルド 19042.746)にwindows10をアップデートする。

- [Windows 10のバージョンアップ方法（1909から2004へ）の方法はこちら](https://office-hack.com/windows/windows10-may-2020-update/)

## 2-2 Imageのダウンロード&コンテナの生成
(2)Powershellを立ち上げ、\J-Quants-Tutorial\handsonにて下記コマンドを実施し、imageダウンロード & コンテナ(名前：tutorial)を生成する。

<font color="Red">注：[チュートリアル](https://japanexchangegroup.github.io/J-Quants-Tutorial/)には、「-rm」が入っていますが「-rm」を入れると、Docker desktopを終了させると同時に作成したコンテナが消えてしまうので、「-rm」のコマンドは下記では削除しております。</font> 

```console:bash
PS C:\Users\fdfpy\J-Quants-Tutorial\handson> docker run --name tutorial -v ${PWD}/data_dir:/path/to -v ${PWD}/Chapter02/archive:/opt/ml -v ${PWD}:/notebook -e PYTHONPATH=/opt/ml/src -p8888:8888 -it continuumio/anaconda3:2019.03
```

## 2-3 Docker DesktopにてCLIを立ち上げる。
下記のキャプチャー画にてCLIをクリックしてください。
![1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/7dc77b16-3d56-e8d9-1424-f83258fc5521.jpeg)

## 2-4 必要モジュールをインストールします。
CLIにて下記3つのコマンドを実行し、必要モジュールをインストールします。

```console:bash
apt-get update
apt-get install -y --no-install-recommends g++ gcc
pip install shap==0.37.0 slicer==0.0.3 xgboost==1.3.0.post0
```

## 2-5 jupyterサーバーを起動させる。
 コマンドをCLIに入力し、jyupterサーバーを起動させる。

```console:bash
jupyter notebook --ip 0.0.0.0 --allow-root --no-browser --no-mathjax --NotebookApp.disable_check_xsrf=True  --NotebookApp.token='' --NotebookApp.password='' /notebook &
```
![2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/69c690a7-8a51-eea8-a52a-ca044ba1bba4.jpeg)

## 2-6 Docker Desktopにてブラウザを立ち上げる。 

- Docker Desktopにて「OPEN IN BROWSER」をクリックする。
![3.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/8dc5b08c-4ded-10d6-1684-53c5b54553df.jpeg)

- Jupyter Notebookがオープンします。localhost:8888にてjyupter notebookが立ち上がります。
![4.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/dcaa46bf-73bb-4d9d-521f-8ff9af6a231f.jpeg)

#3 作業再開時にすること？

一旦Dockerを終了させた後、再度作業を再開する場合は下記の作業をします。

#3-1 コンテナを再開させる。
Docker Desktopにてtutorial　コンテナを再開させる。
![5.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/4ff17d6b-a9bd-2070-4cad-52db4ccc22c4.jpeg)

#3-2 CLIを起動

Docker DesktopにてCLIを立ち上げる。
![1.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/4c4958d2-1ea8-febb-8cf9-32f070f74322.jpeg)

#3-3 jupyterサーバーを起動させる。

 コマンドをCLIに入力し、jyupterサーバーを起動させる。

```console:bash
jupyter notebook --ip 0.0.0.0 --allow-root --no-browser --no-mathjax --NotebookApp.disable_check_xsrf=True  --NotebookApp.token='' --NotebookApp.password='' /notebook &
```
![2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/69c690a7-8a51-eea8-a52a-ca044ba1bba4.jpeg)

#3-4 Docker Desktopにてブラウザを立ち上げる。 
- Docker Desktopにて「OPEN IN BROWSER」をクリックする。
![3.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/8dc5b08c-4ded-10d6-1684-53c5b54553df.jpeg)

- Jupyter Notebookがオープンします。localhost:8888にてjyupter notebookが立ち上がります。
![4.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150223/dcaa46bf-73bb-4d9d-521f-8ff9af6a231f.jpeg)