1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Docker CLIのためにTask(Go Task Runner)をインストールし、タスク管理を簡素化する

Posted at

こんばんは。

今日は「Docker CLIのためにTask(Go Task Runner)をインストールし、タスク管理を簡素化する」について説明いたします。

Docker CLIのためにTask(Go Task Runner)をインストールし、タスク管理を簡素化するためのプロセスは次の通りです。Taskを使うことで、Taskfile.ymlを作成して、Dockerの操作をスクリプト化したり、Docker CLIをカスタムコマンドとして定義することができます。

以下は、Taskをインストールし、Docker CLIをTaskで管理する手順です。

Taskのインストール

まず、Taskをインストールします。TaskはGoで書かれたTask Runnerで、各種タスクを簡単に実行するために使用できます。

MacOS / Linux の場合:

sudo sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d

Windowsの場合 (Chocolateyを使用):

choco install task

Homebrewでインストール (MacOS, Linux):

brew install go-task/tap/go-task

Taskfileの作成

Taskがインストールされたら、プロジェクトディレクトリにTaskfile.ymlという名前のファイルを作成します。このファイルに、Docker CLIを使ったコマンドを定義します。

例えば、以下のようにTaskfile.ymlを設定します。

Taskfile.ymlの例

version: '3'

tasks:
  build:
    desc: Build a Docker image
    cmds:
      - docker build -t myapp .

  run:
    desc: Run the Docker container
    cmds:
      - docker run -d --name myapp-container myapp

  stop:
    desc: Stop the running Docker container
    cmds:
      - docker stop myapp-container
      - docker rm myapp-container

  logs:
    desc: Display logs from the container
    cmds:
      - docker logs -f myapp-container

  clean:
    desc: Remove all stopped containers and dangling images
    cmds:
      - docker system prune -f

Taskコマンドの実行

Taskfileに定義されたタスクは、以下のように簡単に実行できます。

Dockerイメージをビルドする:

task build

コンテナを実行する:

task run

コンテナを停止する:

task stop

コンテナのログを表示する:

task logs

不要なコンテナやイメージをクリーンアップする:

task clean

必要に応じたTaskfileのカスタマイズ

Taskfile.ymlは、必要に応じてカスタマイズできます。たとえば、環境変数の使用、依存関係タスクの設定、動的コマンド実行など、柔軟なタスク管理が可能です。

環境変数を使用した例

version: '3'

tasks:
  build:
    desc: Build a Docker image
    vars:
      IMAGE_NAME: myapp
    cmds:
      - docker build -t {{.IMAGE_NAME}} .

まとめ

これでTaskをインストールし、Taskfileを使用してDocker CLIのタスクを自動化する基本的な環境が整いました。このセットアップにより、Dockerの一般的な操作をTask経由で管理できるため、複雑なコマンドをシンプルに実行できるようになります。

今日は以上です。

ありがとうございました。
よろしくお願いいたします。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?