Docker | 入門 & 基礎操作


Dcoker 入門

確保docker 已經安裝好了,如沒有裝好的可以參考:Docker | 安裝

運行第一個容器

	docker run -it ubuntu /bin/bash

docker run :運行容器的命令。

-i: 保證容器中的 STDIN標准輸入是開啟的。

-t:為容器分配置一個偽tty終端。

ubuntu: 容器的鏡像名稱,如不指定版本號,則為最新穩定版本。

/bin/bash: 指定終端的腳本解析器為 bash

在這個容器中,所有的操作和普通的 ubunt機器一樣,所有的操作都可以正常進行,並且docker還會為這個容器分配 ip,可以通過: cat /etc/hosts查看。

image-20210908101412634

也可以安裝軟件:

image-20210908101329911

當執行完操作后,我們可以通過 exit退出。

容器命名

如果我們在使用命令時,一直使用 docker id 的話,會非常的不方便操作,隨然docker 會為容器生成一個隨機命名,但並不方便我們記憶,所以我們可以為我們創建的容器命名,命令:docker run --name ubuntu_test -it ubuntu /bin/bash

image-20210908103042446

查看容器 & 啟動容器

查看自己的所有容器,命令:docker ps -a

image-20210908102001340

查看自己所有運行中的容器,命令:docker ps

image-20210908102109257

啟動已經停止運行的容器,命令:`docker start [docker name]|[docker id]

image-20210908102153319

停止運行的容器,命令:`docker stop [docker name]|[docker id]

能過命令重新附着到運行的容器中,命令:docker attach [docker name]|[docker id]

image-20210908102518270

創建守護式容器

我們在正常使用中,希望容器都可以一直運行一去,但是我們上面的容器,都是交互式容器,只要用戶一退出,容器就自動關閉了,所以我們需要創建實護式的容器,當我們退出以后也可以一直運行下去。

	docker run -d --name ubunut_docker_test ubuntu /bin/sh -c "while true;do echo hello world; sleep 1;done;"

image-20210908105331346

查看容器中輸出的日志,命令:docker logs [docker name]|[docker id]

image-20210908105504735

我們也可以添加參數查看日志:

-f:一直監控日志進行查看。

-t:在日志每一行前面加上時間戳。

查看容器內部進程,命令:docker top [docker name]|[docker id]

image-20210908110011509

在容器內部運行命令

我們可以在容器外面直接運行命令對容器內部進行操作。

	docker exec -d [docker id]|[docker name] (common)

例如:

	docker exec -d ubunut_docker_test mkdir /tmp/ubunut_docker_test

image-20210908110417358

沒有輸出,說明已經執行成功了,但是日志無法輸出,我們如果想要看效果的話,只能去容器內部查看。可以通過命令進入容器內部。

進入守護式容器內部

	# 格式
	docker exec -it [docker name]|[docker id] /bin/bash
	docker exec -it ubunut_docker_test /bin/bash

image-20210908110659468

查看容器的信息

我們平時,除了可以通過 docker ps查看命令的大致信息外,我們還可以通過 docker inspect [docker name]|[docker id]來查看單個容器的詳細信息:

image-20210908111258468

Docker 的基本操作

  • 查看所有運行中的鏡像:
    docker ps
  • 查看本地所有的鏡像:
    docker ps -a
  • 運行鏡像:
    docker start 鏡像名|鏡像ID
  • 停止鏡像:
    docker stop 鏡像名|鏡像ID
  • 刪除鏡像:
    docker rm 鏡像名|鏡像ID
  • 得到所有的鏡像ID
    docker ps -a -q
  • 運行所有鏡像:
    docker start $(docker ps -a -q)
  • 停止所有鏡像:
    docker stop $(docker ps -a -q)
  • 刪除所有鏡像:
    docker rm $(docker ps -a -q)


細節決定成敗!
個人愚見,如有不對,懇請斧正!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM