🍼

仮想環境作るためにとりあえずDockerを動かしたい人への記事

2022/02/20に公開

誰向けに書いたの?

Dockerを仮想環境作るためだけに使いたいけど、Dockerなんもわからんという初心者の人たち

この記事はDockerで仮想環境をただ作りたいだけという友人が周りにぽつぽつ出てきたので、自分のメモ用に書いておいたのを外に公開したものです。

  • 参考リンク

コマンドライン引数チートシート
https://scrapbox.io/llminatoll/docker_runのオプションいろいろ

Dockerコンテナの作成、起動〜停止まで - Qiita

Dockerイメージとコンテナの削除方法 - Qiita


インストール

省略(別記事)見てください。
以降はコマンドを認識すること前提です。

概要

独立した仮想環境を作れます。それをコンテナと呼びます。
イメージがクラス定義で、
コンテナがイメージをインスタンス化したみたいなもの。

コマンド

具体的なコマンド入力は参考リンクを見てください。

docker ps ...現在稼働しているコンテナの一覧表示

docker ps -a ... 停止してるコンテナ含めすべてのコンテナの一覧表示

docker images ... ダウンロードしたイメージの一覧表示

docker start ... 停止してるコンテナを起動

docker attach ... 起動中のコンテナに入る。exitで抜けられる。ctrl P → ctrl Q でコンテナを終了せずに出られる。

docker run ...イメージからコンテナを新しく作成。
  • コンテナの作り方
    主に二通りある
  1. docker run でコンテナを生成する。自分の持つイメージの中になければネットからDLしてくる。
  2. git clone とかしてから、Dockerfileがあるディレクトリに移動し、
    docker build .
    する。これでDockerfileに書かれた設定のイメージが生成される。そのあとにイメージからコンテナを作成すればおk

「入力補完がきく既存のVSCode環境でコーディングしたい」

マウントすればよい。
マウントすればマシン側の変更をコンテナ側が同期的に受け取るので、既存のコーディング環境でコードを書く→ビルドはコンテナ上のターミナルでする
というのが可能になる

-v でマウントする

https://amateur-engineer-blog.com/docer-compose-volumes/

docker run -it -v ~/mydevDir/itsProject:/root   [コンテナ名]

のようにマウントする

(別方法)RemoteContainerを使ってコンテナ内に入る

新しいVSCode環境なので既存の拡張機能が使えないことに注意。

コンテナ起動させたあとctrl P + ctrl Q でコンテナを抜ける
左下の緑色のマークを押して、remote-container attach to running containerを選択
これで完了。

  • https://qiita.com/chroju/items/ce9cae248cc016745c66:コンテナのライフサイクルについて
  • 基本コンテナは使い捨てであり、残したいデータを保存しておく場所ではないことに注意する
    • とはいっても個人開発なら使い捨てのような使い方はしない((

dockerのprivateなremote repository にイメージをPushする方法

https://zenn.dev/suiudou/articles/9493fa8c4c7369

その他

docker compose の環境構築

https://ikasamak503.hatenablog.com/entry/dry-docker-compose-yaml

Discussion