リポジトリ
https://github.com/shinichi-takahashi/docker-ask-cli-ts

背景

  • TypeScriptでつくりたい
  • ask-cliが ~/.ask を参照するしglobalに入れろって言ってきがち
    • globalにコマンドを絶対に生やしたくない
    • Dockerのglobalで勘弁してやろう…
  • 共同開発したい
    • .askを共有していきたい

使い方

READMEから転載

最初にやること

# Dockerイメージの作成
docker-compose up --build

# アカウント認証
docker-compose run ask-app ask init --no-browser

チートシート

# デプロイ
docker-compose run ask-app ask deploy

# コンテナに入りたい場合
docker-compose run ask-app sh

# コンテナの破棄
docker-compose down

ask new を叩く代わりにDockerコンテナ立ち上げることで同等のことを行うイメージで作りました。

いいことあるの?

プロジェクト毎に環境を閉じられる

.askをDockerのユーザーホームに追加するので共通なコンテナ使うより煩雑になりづらくした。
git cloneしてdocker-composeをポチーするだけでおk
(.envで COMPOSE_PROJECT_NAME 変更とかはしたほうがいいけど)

TypeScript -> JavaScriptをhooksで行う

hooksが生えてたので、それを利用してwebpackでトランスパイルをするようにした
当初はホットリロード的なものを実装しようと思ってたけど、必要ないかな?とおもって未実装
書いてて思ったんだけど、 ask simulate たたくときとかは必要そうだから以下を参考に今後実装します。
https://qiita.com/yuukive/items/012bdf1b9ff3881546b3#%E5%A4%89%E6%9B%B4%E6%A4%9C%E7%9F%A5%E3%81%97%E3%81%A6%E8%87%AA%E5%8B%95%E3%83%AA%E3%83%AD%E3%83%BC%E3%83%89

参考

https://github.com/martindsouza/docker-amazon-ask-cli

元記事はこちら

ask-cliを絶対にglobalにいれたくなくてTypeScriptなDocker環境つくった