TIL|Dockerの使用


Dockerとは?


ドッキングコンテナは、ソフトウェアの開発、導入、および実行に簡単な方法を提供するコンテナ仮想化技術です.
『写真』既存の仮想化技術とコンテナの比較

Docker Container

  • ドックの全体像をカセットレコーダーにたとえる
  • ドックイメージはカゼフテープ.
  • ドックデモン(サーバー)はカードプレーヤー.
  • カセットテープをカセットレコーダーで再生する動作と、それによる結果がコンテナである.
  • これは、どのコンピュータやサーバにも大容量がインストールされていれば、画像を持って実行できることを意味する.
  • コンテナは単一フローとして動作し、フローが完了するとコンテナも閉鎖される.
  • Dockerプライマリコマンド

  • docker ps:稼働中のコンテナを表示するコマンド
  • docker ps -a:すべてのコンテナ(閉じたコンテナを含む)のコマンドとオプションを表示する
  • docker images:生成またはダウンロードした画像を表示するコマンド
  • docker images -a:すべての画像を表示するコマンドとオプション
  • docker build -t '도커허브에 가입한 계정명'/'이미지명(프로젝트명 권장)':'버전' .:ドック映像を構築する命令語
  • docker run --name '컨테이너 명' '이미지명':ドックコンテナの命令(使用済み画像)
  • docker run -it '이미지명'/bin/bash:ドックコンテナを運転しながらコンテナに接続してshellを運転する指令
  • Vscodeを使用したDockerfileの作成

    Mac: command + shift + x
    Window, Linux: control + shift + x
    Vscodeでは、上記コマンドを使用して拡張子を開き、検索してインストールするDocker.
    インストールが完了すると、ワークスペースにDockerfileの名前でファイルが作成されると、タブのアイコンがDockerアイコンに変わります.requirements.txtファイルを入れるgunicorn確保
      #./Dockerfile
      FROM python:3.9
      #기반이 될 이미지
      
      #작업디렉토리 (default)설정
      WORKDIR /usr/src/app
      
      ## Install packages
      #현재 패키지 설치 정보를 도커 이미지에 복사
      COPY requirements.txt ./
      #설치정보를 읽어 들여서 패키지를 설치
      
      RUN pip install -r requirements.txt
      
      ## Copy all src files
      #현재경로에 존재하는 모든 소스파일을 이미지에 복사
      COPY . .
      
      ## Run the application on the port 8000
      #8000번 포트를 외부에 개방하도록 설정
      EXPOSE 8000
      
      CMD ["gunicorn", "--bind", "0.0.0.0:8000", "<project name>.wsgi:application"]

    Docker Build

  • docker build -t <docker 계정명>/<이미지명>:<버전>入力後
  • 試してみると
  • docker images生成したばかりの画像がわかります.
  • docker run --name <설정할 docker 컨테이너명> -p 8000:8000 <docker 계정명>/<이미지명>:<버전>実行時にサーバが正常に動作していれば成功する
  • 入力
  • docker push <docker 계정명>/<이미지명>:<버전>ドックセンターに画像をアップロードします.
  • 今は欲しいところにこのイメージを書いておけば終わりです.
  • docker pull <docker 계정명>/<이미지명>:<버전>