DockerでNESTJSを実行することは、Kool
Kool is a free, open source CLI tool that makes local development with Docker super easy. Kool CLI will level up your development workflow, and help you and your team improve the way you develop and deploy cloud native applications.
要件
あなたがそうしなかったならば、あなたは最初に必要ですinstall Docker and the Kool CLI .
あなたが既に持っているならば
kool
インストールされている場合は、最新バージョンを実行していることを確認します.$ kool self-update
ステップ1 -新しいNESTJSアプリケーションを作成する
使用する
kool create
command 新しいNESTJSプロジェクトを作成するには.$ kool create nestjs my-project
フードの下で、このコマンドは実行されますnest new my-project
カスタマイズされたクールDockerイメージを使用してNESTJSをインストールするには、次の手順に従います.kooldev/node:14-nest .Learn more about Kool Docker Images in our article .
nestjsのインストール後
kool create
自動的に実行する kool preset nestjs
command , これは、インタラクティブなウィザードを使用してプロジェクトの初期の技術スタックを設定するのに役立ちます.$ Preset nestjs is initializing!
? Which database service do you want to use [Use arrows to move, type to filter]
> MySQL 8.0
MySQL 5.7
PostgreSQL 13.0
none
? Which cache service do you want to use [Use arrows to move, type to filter]
> Redis 6.0
Memcached 1.6
none
? Which package manager did you choose during Nest setup [Use arrows to move, type to filter]
> npm
yarn
$ Preset nestjs initialized!
さて、あなたの新しいNESTJSプロジェクトに移動します.$ cd my-project
The kool preset
コマンドの自動は、次の設定ファイルを生成し、簡単に変更することができますし、ニーズに合わせて拡張するプロジェクトにそれらを追加しました.+docker-compose.yml
+kool.yml
ステップ2 (オプション)-環境変数を追加する
You can skip this step if you did not add a database or cache service to your project via the wizard.
データベースおよび/またはキャッシュサービスを追加する場合は、いくつかのローカル環境変数を追加する必要があります.YMLファイル(下記参照).たとえば、localhostからホストを適切なサービスコンテナー名に変更する必要があります.
クリエイト.プロジェクトのルートディレクトリ内のenvファイルを指定し、プロジェクトで使用するサービスに基づいて適切な環境変数を次のファイルに追加します.
Learn more about how to configure NestJS.
データベースサービス
MySQL 5.7および8.0
+DB_CONNECTION=mysql
+DB_HOST=database
+DB_DATABASE=<some_database_name>
+DB_USERNAME=<some_username>
+DB_PASSWORD=<some_password>
PostgreSQL 13.0+DB_CONNECTION=pgsql
+DB_HOST=database
+DB_PORT=5432
+DB_DATABASE=<some_database_name>
+DB_USERNAME=<some_username>
+DB_PASSWORD=<some_password>
キャッシュサービス
レッドシス
+REDIS_HOST=cache
+REDIS_PORT=6379
memcachedする+MEMCACHED_HOST=cache
+MEMCACHED_PORT=11211
ステップ3 -ローカル環境を起動する
今、あなたのローカル環境を初めて使用してスピン
setup
あなたのクールなスクリプト.YMLファイル:$ kool run setup
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.1 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
audited 879 packages in 32.143s
78 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
Creating network "my-project_kool_local" with the default driver
Creating volume "my-project_database" with default driver
Creating volume "my-project_cache" with default driver
Creating my-project_database_1 ... done
Creating my-project_app_1 ... done
Creating my-project_cache_1 ... done
それだ!一度
kool run setup
終了すると、あなたの新しいNESTJSアプリにアクセスできますhttp://localhost:3000 そして、NESTJS「こんにちは世界」を見てくださいようこそページ.ワークフローのレベル
今すぐあなたの新しいNESTJSアプリを実行していると、あなたの開発のワークフローを平準化を開始するためにクールCLIを使用することができます.
スクリプトをクールに追加します.気象研
クールを考える.MYLは非常に使いやすいタスクヘルパーとして.カスタムシェルスクリプトを書く代わりに、独自のスクリプトを追加することができます.の下に
scripts
で、それらを実行します.kool run SCRIPT
. 単一の行コマンドを追加できますkool run nest
), またはシーケンスで実行されるコマンドの一覧を追加します.kool run setup
). たとえば、スクリプトを追加してデータベース移行を実行したり、ローカル環境をリセットしたり、静的解析ツールを実行したりします.チームメイトや新しい開発者にとってどれくらい簡単になるか考えてみてください.scripts:
mysql: kool exec -e MYSQL_PWD=$DB_PASSWORD database mysql -u $DB_USERNAME $DB_DATABASE # or psql for PostgreSQL
nest: kool exec app nest
npm: kool exec app npm # or yarn
npx: kool exec app npx
setup:
- kool docker kooldev/node:14 npm install # or yarn install
- kool start
コマンドを実行する
実行中のサービスコンテナー内でコマンドを実行する必要がある場合は、
kool exec
command . 以下の操作を実行して、あなたのapp
コンテナ.$ kool exec app node -v
v14.17.1
データベースへの接続
データベースサービスを追加すると、実行中に新しいSQLクライアントセッションを開始します
database
実行するコンテナkool run mysql
( MySQL )あるいはkool run psql
( PostgreSQL ).これはmysql
or psql
あなたのクールなスクリプト.京大理依存関係を追加する
あなたのプロジェクトが進化するにつれて
package.json
, 使用する kool restart
command 再起動するapp
コンテナを読み込み、新しいパッケージを読み込みます.$ kool restart app
Stopping my-project_app_1 ... done
Going to remove my-project_app_1
Removing my-project_app_1 ... done
Creating my-project_app_1 ... done
ログを見る
ビューコンテナのログ
kool logs
command . ランkool logs
すべての実行中のコンテナのログを表示するにはkool logs app
サービスを指定し、app
コンテナ.追加する-f
オプションkool logs
ログをたどるにはkool logs -f app
).仕事を共有する
あなたのチームとローカルの変更をすばやく共有する必要があるときは、使用してください
kool share
command httpトンネルを介してインターネット上でローカル環境を共有する.独自のサブドメインを指定します--subdomain
フラグ.$ kool share --port=3000
Thank you for using expose.
Local-URL: app:3000
Dashboard-URL: http://127.0.0.1:4040
Expose-URL: https://eeskzijcbe.kool.live
Remaining time: 00:59:59
Remaining time: 00:59:58
Remaining time: 00:59:57
スイッチプロジェクト
Koolは、任意の言語やフレームワークをサポートしていますので、すべてのあなたの技術スタック間で作業を標準化することができます.それはあなたの新しいNESTJSアプリで作業を停止し、別のプロジェクトに切り替えるときは、簡単に実行することによってローカルDocker環境を変更することができます
kool stop
NESTJSプロジェクトでは、他のプロジェクトディレクトリに移動し、実行中kool start
.$ kool stop
$ cd ~/my-other-project
$ kool start
プリティクール、右?If you like what we're doing, show your support for this new open source project by starring us on GitHub!
ダイビング
Read the docs for our NestJS Preset NestJSでKoolを使用することについて学ぶために.
Go to kool.dev Koolオープンソースプロジェクトの詳細については.
kool-dev / kool
ローカル開発からクラウドへ:開発ワークフローを簡単に.
アバウト
kool
クールは、地球に現代的なソフトウェア開発環境の複雑さをもたらすCLIツールです-これらの環境軽量、高速かつ再現性を作る.これは、複雑さとローカル環境のためのDockerとDockerの構成の学習曲線を削減し、クラウドにステージングと生産環境を展開するKubernetesを使用するための簡略化されたインターフェイスを提供しています.クールはあなたのローカル開発環境を取得し、簡単かつ迅速に実行しているので、素晴らしいアプリケーションを構築するより多くの時間があります.時が右の場合は、展開し、世界とあなたの仕事を共有するためにクールな雲を使用することができます!
クールなソロ開発者とすべてのサイズのチームに適しています.それは、より専門的なDocker環境の上で制御の損失を保証していない間、Docker基本を処理して、すぐに開発のために容器を使用し始めます.
Learn more at kool.dev .
インストール
要件:クールです.
View on GitHub
Reference
この問題について(DockerでNESTJSを実行することは、Kool), 我々は、より多くの情報をここで見つけました https://dev.to/kooldev/running-nestjs-on-docker-is-really-easy-with-kool-5b8mテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol