TIL95. Docker:Dockerコマンドクリーンアップ


📌 Dockerの使い方について議論します.

🌈 Dockerコマンドのクリーンアップ


🔥 About Docker


🔥 Docker CLIコマンド


🔥 Dockerイメージの作成方法


🔥 Dockerイメージの共有


1. About Docker


🤔 どうしてDockerを書くのですか?


✔DockerはLinuxオペレーティングシステムのコンテナ技術です.
メインフレーム領域とその内部をコンテナ領域に分割することをコンセプトとしています.オペレーティングシステムがインストールされている領域をホストと呼び、インストールされている各アプリケーションをホストから分離します.コンテナには、アプリケーションを実行するために必要なライブラリと実行可能ファイルのみが含まれます.
ААААААААААААА
АААААААААААА

🤔 Dockerのインストール方法


✔DockerはLinuxオペレーティングシステムで使用されるコンテナ技術ですが、WindowsまたはMacオペレーティングシステムのみを使用してDockerをインストールすると、Dockerは自分で仮想環境にLinuxをインストールできるので便利です.
✔Docker取付方法:https://docs.docker.com/get-docker/
🔎 正常なインストールを確認するには、ターミナルドッキング画像

🤔 pull vs run


✔dockerがダウンロードできるアプリケーションの概念をdocker hub、インストールするアプリケーションをイメージと呼びます.このイメージを実行するコンテナとも呼ばれます.
✔ここでは、docker hubにインストールされているイメージをpullと呼び、このイメージをアクティブにすることをcontainerと呼びます.

2.Docker CLIコマンド


🤔 image&containerコマンド


勘定科目の勘定科目と勘定科目のイメージのインストール🔎 docker pull [image name]
АААААААА🔎 docker images
✔▼運転中の容器を点検する⇢🔎 docker ps
✔τすべての容器を検査する🔎 docker ps -a
勘定科目のコンテナのアクティブ化🔎 docker runイメージ名
✔▼容器名の指定と活性化⇢🔎 docker run-name[コンテナ名]画像名
勘定科目のコンテナ・ポート転送🔎 docker run--name[コンテナ名]-p[ローカルポート:imageport]イメージ名
勘定科目のコンテナ停止🔎 docker stop
勘定科目の勘定科目コンテナの再起動🔎 docker start[Conatiner名]
✔▼ログのリアルタイム追跡状態を表示する⇢🔎 docker logs-f
勘定科目のコンテナの強力な削除🔎 docker rm[conatiner名]--force
✔」イメージ削除⇢🔎 docker rmi [image name]

🤔 コンテナ内でのCLIの実行


АААААААА🔎 docker exec[option]conatiner name command
АААААААААААА🔎 docker exec-it[conatiner名]/bin/sh
✔bash保持接続⇢🔎 docker exec-it[conatiner名]/bin/bash
プログラムを10004▼ボックスにインストール🔎 apt update ⇢ 🔎 apt install[プログラム名]
✔""""""""🔎 exit
✔1524;注:」

🤔 ホストの成果物をコンテナにバインドする


✔ホスト領域以外のホスト領域で実行されるファイル操作を、実行環境を構築するコンテナに適用する方法について説明します.
🔎 docker run-p[host port:container port]-v[hostパス:containerパス]conatiner名

3.Dockerイメージの作成方法


🤔 なぜDockerイメージを作成しますか?


✔ducker hubでは、Ubuntuがpullを介してイメージにダウンロードされ、実行時にgitがないためgitをインストールする必要があります.
✔このようなコンテナ環境が複数必要な場合は、毎回のUbuntuのダウンロードやインストールの手間を軽減するため、gitをインストールしたUbuntuを使用してイメージすることができます.
ААААААААААААААААААこれは容器を回収するためです.
✔duckerイメージを作成する方法はcommitとdockerfile&buildです.

🤔 commitを使用してdockerイメージを作成する


✔まずUbuntuイメージを取得し、コンテナを実行してこの内部に入りgitをインストールします.bachを使用してCLIにアクセスするには、次の手順に従います.
🔎 ducker pull ubuntu sundocker run-it-name[コンテナ名]ubuntu bash
🔎 docker pull ubuntu ⇢ docker run -it --name my-ubuntu ubuntu bash
✔ubuntu内部インストーラはaptを使用し、更新後にドラゴン回避プログラムをインストールします.
🔎 apt update ⇢ apt install git ⇢ exit
インストールに問題がない場合は、現在のコンテナステータスをcommitとしてイメージします.
🔎 dockerコミット[イメージングするコンテナ名]リポジトリの場所:[使用する画像名]
🔎 docker commit my-ubuntu jaewon:ubuntu-include-git
✔commitを使用してイメージを作成すると、独立した環境を簡単に作成できます.
🔎 docker run -it --name my_python jaewon:ubuntu-include-git ⇢ apt update && apt install python
🔎 docker run -it --name my_nodejs jaewon:ubuntu-include-git ⇢ apt update && apt install nodejs

🤔 dockerfile&buildを使用してdocker画像を作成する


✔commitを使用してdocker画像を作成すると、画像に何が含まれているかを系統的に理解するのは難しい.このため、dockerfileとbuildを使用してイメージを作成できます.
✔ルールに従ってdockerfileを作成し、buildからコマンドを発行してdocker画像を作成します.
✔commitとdockfile&buildはどちらもイメージを作成できますが、commitは作成したイメージをバックアップするために使用され、プロセスに従ってdockfile&buildを作成することに重点を置いています.
ubuntu(20.04バージョン)コンテナを作成しshellに入ります
🔎 docker-build >> docker run --name web-sever -it ubuntu:20.04
FROM ubuntu:20.04 👈 이미지 설치
RUN apt update && apt install -y python3  👈 설치 후 shell 명령 실행
WORKDIR /var/www/html 👈 경로 생성 및 해당 디렉토리(/var/www/html)로 이동
COPY ["index.html", "."] host의 파일(index.html)을 현재 경로(container 내부에 /var/www/html)로 복사
CMD ["python3", "-u", "-m", "http.sever"] 👈 python 내장 웹서버 실행 명령
ААААААААААААААすなわち、RUNにおいて実行された結果は画像に反映され、CMDにおいて実行された結果は容器に反映される.
✔duckerfileを実行するbuildコマンドは次のとおりです.
🔎 docker build -t web-sever-build .
🔎 docker run 8888:8000 --name web-server web-server-build

4.Dockerイメージの共有


🤔 画像をDocker hubにプッシュ


✔まず、docker hubにリポジトリを作成します.
10004 Ubuntuイメージをインストールしmy-pythonというコンテナを作成し、Shellでコンテナに入りpython 3をインストールします
🔎 docker run it --name my-python ubuntu ⇢ apt update && apt install -y python3 ⇢ exit
プッシュするイメージの作成
🔎 docker commit my-python [repository cmd:Tag]
✔docker loginをdocker hubのrepositoryにアップロードします.
🔎 docker login
✔けちん坊ducker hub共有
🔎 docker push [repository cmd:Tag]
✔」ローカルのdockerイメージを削除し、docker hubからdockerイメージをダウンロード
🔎 docker rmi --force [repository cmd:Tag] ⇢ docker pull [repository cmd:Tag]

🤔 githubを使用して画像を共有する


✔Docker hubは1つの専用リポジトリしか無料で使用できないので、Git hubにプッシュする方法について説明します.
✔まずgit hubからtokenを取得しなければなりません.tokenは次の場所にあります.必要な内容をチェックし、発行を取得すればいいです.リフレッシュすると消えますので、しばらく他の場所にコピーしてください.
🔎 settgins ⇢ Developer settgins ⇢ Personal access tokens
✔端末では、以下のコマンドを使用してtoken値を環境変数として保存します.
🔎 export CR PAT=token値
✔doker hubをgithubに変更します.
🔎 echo $CR_PAT | docker login ghcr.io-u[githubアイデンティティ]--password-stdin
✔新規Shellを起動するたびにCR PAT値をエクスポートしない場合は、Shellを実行するたびに自動的に実行し、保存するためにzshに進みます.
🔎 vim ~./zshを末尾に移動してCR PAT=token値をエクスポート
✔""""""""
🔎 docker run -it --name my-ubuntu ubuntu
🔎 docker commit my-ubuntu ghcr.io/github ID/[パケットパス:Tag]
🔎 docker push ghcr.io/github ID/[パケットパス:Tag]