Djangoroidの奮闘記

python,django,angularJS1~三十路過ぎたプログラマーの奮闘記

Angular4入門_Vol.20

参考サイト

https://www.codingforentrepreneurs.com/projects/try-angular-v4/

ngBuild and Deploy to Heroku

  • packageが完成したら、$ ng build --prod で、deploy用に、bundle.jsを作成する。prodオプションは、minファイルにするためか。bundle.jsには、typescriptファイルを役割ごとにまとめて、javascriptにtrans compileしたコードが記載されている。

  • $ ng build --prod --output-path /Users/username/Desktop/try_angular4/ngSrvupTest というコマンドでpathを指定して、ファイルを出力する。

  • さらに、$ ng build --prod --output-path /Users/username/Desktop/try_angular4/ngSrvupTest --watchで、watchもできる。

  • $ ng build --prod --output-path /Users/yassy/Desktop/try_angular4/ngSrvupTest/public/ というように、publicにしておいたほうがデプロイのときに楽ぽい。

  • ngSrvupTest フォルダに、Procfileを作成する。

web: node index.js
  • package.jsonを作成する(requirements.txtみたいなもんかな)
{
  "name": "try-angular-4",
  "version": "1.0.0",
  "main": "index.js",
  "engines": {
    "node": "5.9.1"
  },
  "dependencies": {
    "ejs": "2.4.1",
    "express": "4.13.3",
    "path": "0.12.7",
    "mongoose": "4.9.3",
    "body-parser": "1.17.1",
    "compression": "1.6.2"
  }
}
  • index.jsを作成する。
var express = require('express');
var path = require('path');
var app = express();

const port = process.env.PORT || '5000';

app.set('port', port);
app.use(express.static(__dirname + '/public')); // staticファイルの置き場所?
app.get('/[^\.]+$', function(req, res){
    res.set('Content-Type', 'text/html')
        .sendFile(path.join(__dirname, '/public/index.html'))
});

app.listen(app.get('port'), function(){
    console.log("Node app is running at localhost:" + app.get('port'))
});
  • $ node index.jsを実行してみる。。。error! express確認できないとのこと。

  • $ npm installで、package.jsonから必要なpackageをinstallする。

  • $ node index.js再度実行する。。。localhost:5000にアクセスしたところ無事表示された(^^)

  • .gitignoreファイルを作成する。

node_modules
.DS_Store
  • herokuにデプロイするために、git repositoryをlocalに作成する。
$git init
$git add --all
$git commit -m "initial commit"
  • herokuのrepositoryを作成する。
$ heroku create tryangular4
Creating ⬢ tryangular4yassy... done
https://tryangular4.herokuapp.com/ | https://git.heroku.com/tryangular4.git
  • $ git push heroku master で、deployする。。。デプロイ成功!上記で作成されたurlにアクセスすると、デプロイされているか確認できる(^^)