您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何安裝和使用Docker”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何安裝和使用Docker”吧!
docker的安裝非常簡單。
下載安裝包進行安裝。 Docker Desktop for Mac (macOS) Docker Desktop for Windows
有三種方式(根據自身網絡情·況任選一種):
使用源進行安裝(需要提前設置好源環境)
$ sudo apt-get install docker-ce docker-ce-cli containerd.io
下載離線包進行安裝(https://download.docker.com/linux/ubuntu/dists/)
$ sudo dpkg -i /path/to/package.deb
使用在線腳本安裝
$ curl -fsSL https://get.docker.com -o get-docker.sh $ sudo sh get-docker.sh
所有的docker命令,都先以docker起頭,然后空格并跟上子命令執行相應的操作。 詳細的命令行文檔參見官網:https://docs.docker.com/engine/reference/commandline/cli/
run 表示啟動,并需要指定一個鏡像文件,docker以該鏡像文件作為模版啟動一個容器。
$ docker run -d -p 80:80 docker/getting-started
-d 表示后臺運行
-p 80:80 表示端口映射 將本地80端口,映射到容器的80端口
docker/getting-started 使用的鏡像文件(此鏡像是官網提供的教程鏡像,啟動后可以在瀏覽器中打開 http://localhost/tutorial/ 進入docker新手教程)
ps 查看運行中的容器,每個運行的容器都會有一個containerId,類似linux的ps命令返回的pid。
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8234ab6bc530 docker/getting-started "/docker-entrypoint.…" 11 seconds ago Up 9 seconds 0.0.0.0:80->80/tcp hopeful_hamilton
-a 表示all, 查看所有,包括已經停止的
stop 停止一個容器,需要一個containerId指明停止哪個容器。并且stop命令是冪等的,可以認為該命令告訴docker引擎,保持指定的容器處于停止狀態。
$ docker stop 8234ab6bc530
此時再使用ps查看容器會發現該容器已經停止,可以看到該容器的status為Exited (0)。
$ docker ps -af 'id=8234ab6bc530' CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8234ab6bc530 docker/getting-started "/docker-entrypoint.…" 19 minutes ago Exited (0) 3 minutes ago hopeful_hamilton
-af 是 -a(--all)表示所有 和 -f(--filter)表示按條件過濾的組合,'id=8234ab6bc530'是-f的參數,表示只要id為8234ab6bc530的容器。
start 可以啟動一個已停止的容器,需要一個containerId指明具體容器。和stop命令一樣start命令也是冪等的,可以認為該命令告訴docker引擎,保持指定的容器處于啟動狀態。
$ docker start 8234ab6bc530 8234ab6bc530
rm 用于刪除一個指定的容器,但是不允許刪除一個運行中的容器。
$ docker rm 8234ab6bc530 Error response from daemon: You cannot remove a running container 8234ab6bc530fa180da8a42b4c232761f604913c0adde06868dcd63bda841b37. Stop the container before attempting removal or force remove
所以需要先停止,再刪除
$ docker stop 8234ab6bc530 8234ab6bc530 $ docker rm 8234ab6bc530 8234ab6bc530
docker run : 創建一個新的容器并運行一個命令 參數:
-a stdin: 指定標準輸入輸出內容類型,可選 STDIN/STDOUT/STDERR 三項; -d: 后臺運行容器,并返回容器ID; -i: 以交互模式運行容器,通常與 -t 同時使用; -P: 隨機端口映射,容器內部端口隨機映射到主機的端口 -p: 指定端口映射,格式為:主機(宿主)端口:容器端口 -t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用; --name="nginx-lb": 為容器指定一個名稱; --dns 8.8.8.8: 指定容器使用的DNS服務器,默認和宿主一致; --dns-search example.com: 指定容器DNS搜索域名,默認和宿主一致; -h "mars": 指定容器的hostname; -e username="ritchie": 設置環境變量; --env-file=[]: 從指定文件讀入環境變量; --cpuset="0-2" or --cpuset="0,1,2": 綁定容器到指定CPU運行; -m :設置容器使用內存最大值; --net="bridge": 指定容器的網絡連接類型,支持 bridge/host/none/container: 四種類型; --link=[]: 添加鏈接到另一個容器; --expose=[]: 開放一個端口或一組端口; --volume , -v: 綁定一個卷
docker exec : 在運行的容器中執行命令 參數:
-d :分離模式: 在后臺運行 -i :即使沒有附加也保持STDIN 打開 -t :分配一個偽終端
docker cp : 用于容器與主機之間的數據拷貝。 參數:
-L :保持源目標中的鏈接
docker logs : 獲取容器的日志 參數:
-f : 跟蹤日志輸出 --since :顯示某個開始時間的所有日志 -t : 顯示時間戳 --tail :僅列出最新N條容器日志
docker build : 用于使用 Dockerfile 創建鏡像
--build-arg=[] :設置鏡像創建時的變量; --cpu-shares :設置 cpu 使用權重; --cpu-period :限制 CPU CFS周期; --cpu-quota :限制 CPU CFS配額; --cpuset-cpus :指定使用的CPU id; --cpuset-mems :指定使用的內存 id; --disable-content-trust :忽略校驗,默認開啟; -f :指定要使用的Dockerfile路徑; --force-rm :設置鏡像過程中刪除中間容器; --isolation :使用容器隔離技術; --label=[] :設置鏡像使用的元數據; -m :設置內存最大值; --memory-swap :設置Swap的最大值為內存+swap,"-1"表示不限swap; --no-cache :創建鏡像的過程不使用緩存; --pull :嘗試去更新鏡像的新版本; --quiet, -q :安靜模式,成功后只輸出鏡像 ID; --rm :設置鏡像成功后刪除中間容器; --shm-size :設置/dev/shm的大小,默認值是64M; --ulimit :Ulimit配置。 --squash :將 Dockerfile 中所有的操作壓縮為一層。 --tag, -t: 鏡像的名字及標簽,通常 name:tag 或者 name 格式;可以在一次構建中為一個鏡像設置多個標簽。 --network: 默認 default。在構建期間設置RUN指令的網絡模式
感謝各位的閱讀,以上就是“如何安裝和使用Docker”的內容了,經過本文的學習后,相信大家對如何安裝和使用Docker這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。