ablog

不器用で落着きのない技術者のメモ

Jupyter notebook 環境をEC2で構築する

  • AWS Marketplace で "AWS Deep Learning AMI" で検索して、EC2インスタンスを作成する。
  • セキュリティグループで、sshTCP 8888 ポートへの マイIP からのアクセスを許可する。
  • ssh で接続する。
$ ssh -i .ssh/mykey.pem ubuntu@ec2-35-***-***-20.compute-1.amazonaws.com
  • Jupyter notebook のパスワードを設定する。
$ jupyter notebook password
Enter password:
Verify password:
  • SSL 自己証明書を作成する。
$ cd ~
$ mkdir ssl
$ cd ssl
$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mykey.key -out mycert.pem
Generating a RSA private key
(中略)
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Tokyo
Locality Name (eg, city) []:Meguro
Organization Name (eg, company) [Internet Widgits Pty Ltd]:AWS
Organizational Unit Name (eg, section) []:PS
Common Name (e.g. server FQDN or YOUR name) []:Yohei AZ
Email Address []:yohei-a@hatenablog.jp
  • Jupyter notebook サーバを起動する。
$ jupyter notebook --certfile=~/ssl/mycert.pem --keyfile ~/ssl/mykey.key
  • ローカルマシンとポート転送を行う。
$ ssh -i .ssh/mykey.pem -N -f -L 8888:localhost:8888 ubuntu@ec2-35-***-***-20.compute-1.amazonaws.com
  • ブラウザで https://localhost:8888 にアクセスし、設定したパスワードでログインする。

f:id:yohei-a:20200105014648p:plain