AMR-IF-UI: デプロイ
1. デプロイメント
AMR-IF-UI は、Angularフレームワークで構築されており、 AOT (Ahead-of-time) コンパイラで事前にトランスパイル (ビルドする) することで、 ブラウザでのロード速度を向上させることができる事ができ、 nodejs/npm 等がインストールされていないWebサーバ上へデプロイ(配置)することができます。 (ただし、AMR-IF-UI自体は ROS/Robot Web Tools に依存していますので、 必要なパッケージは別途インストールする必要があります。)
1.1. ビルド
AMR-IF-UI のプロジェクトルートディレクトリで ng build コマンドを入力します。
$ ls
LICENSE			README.md		browserslist		img			
ngsw-config.json	package-lock.json	src			tsconfig.json
tslint.json LICENSE_HEADER		angular.json		karma.conf.js
package.json		tsconfig.app.json	tsconfig.spec.json
$ ng build
Compiling @angular/cdk/keycodes : es2015 as esm2015
Compiling @angular/animations : es2015 as esm2015
  : 
  中略
  :
chunk {vendor} vendor-es5.js, vendor-es5.js.map (vendor) 7.42 MB [initial] [rendered]
Date: 2021-09-23T14:35:03.634Z - Hash: 36137cafdae0110f8877 - Time: 101231ms
dist/AMR-IF-UI というディレクトリが作成されており、 その中にデプロイ可能なパッケージが生成されています。
$ cd dist/AMR-IF-UI/
$ ls
assets			main-es2015.js		main-es5.js		manifest.webmanifest
 : 
styles-es2015.js	styles-es5.js		vendor-es2015.js	vendor-es5.js
$
このディレクトリ内のファイルをHTTPサーバの公開可能なディレクトリへコピーすることで、 このプロジェクトを公開可能です。
仮に、いま “/var/www/data” が空であり、 apache の Document Root であると仮定すると
$ sudo cp * /var/www/data/
apacheが動作していれば、http://localhost にアクセスすると以下の画面が表示されます。

1.2. ベースURLの変更
Webサーバのドキュメントルートで公開するのではなく、 場合によっては特定の階層下のURLで公開したいことがあります。
その場合は、build するときに、–base-href= オプションを使用して 公開する階層のパスを指定します。
$ cd <project root>
$ ng build --base-href=/AMR-IF-UI/
$ cd dist
$ sudo cp -r AMR-IF-UI /var/www/data/
こうすると、AMR-IF-UI を http://localhost/AMR-IF-UI/ でアクセスすることができます。