2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Docker コンテナの活用シーン

Last updated at Posted at 2020-11-04

はじめに :whale:

Docker コンテナを初めて使ってから2年くらい経ちました:baby:色々な活用シーンを見た気もするし、誤った使い方をしているのではと気にかかる時もあります。

Docker コンテナを使い始めた人に伝える目的だったり、新しい活用知識が得られる期待もあって"Docker コンテナの活用シーン"を晒します。

1. ソースコードと実行環境を含んだアプリケーションの配布用途

(アプリケーション配布者側)

  • Dockerfile を用意する
  • ソースコード・実行ファイル、実行環境を含めてコンテナイメージをビルドする
  • コンテナイメージをレジストリに置く

(アプリケーション利用者側)

  • レジストリからコンテナイメージを取得する
    • (もしくは Dockerfile からコンテナイメージをビルドする)
  • コンテナイメージを利用する

2. 開発時の実行環境配布用途

  • 成果物がソースコードのみ(ライブラリ等)の場合に開発時の実行環境を用意する
  • 配布者はコンテナイメージをレジストリに置くことまでする必要はない
    • (Dockerfile を用意しておく)

3. DevContainer(開発環境)配布用途、リモート開発環境用途

4. どうなってもいいサンドボックス用途

  • 使い捨ての環境としてコンテナを使う
    • ubuntuを調べる際は docker run -it --rm ubuntu:18.04 bash してます

5. "CLI アプリケーションの中身がDockerコンテナ"な用途

$ curl "<ソース置き場>" > hoge_command
$ chmod +x hoge_command
$ mv hoge_command /usr/local/bin/hoge_command

hoge_command が shell script になっており、script の中でexec docker run fuga_container している。

実例: https://github.com/COLORFULBOARD/bq_profile/blob/master/bq_profile

手軽にCLIアプリケーションを配布する際に便利な気がします

6. "CLIアプリを一時利用"な用途

CLIアプリ(コマンド)を install せずに利用する目的で Docker コンテナを使う事ができます

  • git を install せずにgitを利用する
    • docker run --name repo alpine/git clone https://github.com/docker/getting-started.git
    • docker cp repo:/git/getting-started/ .
  • 出自: Docker Desktop for Mac のチュートリアル

以上です。
他にもこんな使い方したら便利だよという情報があれば教えてください。

2
2
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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?