摘要:一核心組件客戶端和服務(wù)端鏡像容器二關(guān)鍵概念以鏡像為基礎(chǔ),在鏡像的基礎(chǔ)上創(chuàng)建運行容器,可以簡單的理解為容器是鏡像運行時的表現(xiàn)。
一、docker核心組件
docker客戶端和服務(wù)端 docker鏡像 registry docker容器二、關(guān)鍵概念
docker以鏡像為基礎(chǔ),在鏡像的基礎(chǔ)上創(chuàng)建、運行容器,可以簡單的理解為容器是鏡像運行時的表現(xiàn)。三、docker基本命令
容器相關(guān)
1、docker run --name container_name -i -t ubuntu /bin/bash (創(chuàng)建一個交互式容器) docker run 命令指的是運行某一個鏡像,這里指ubuntu鏡像 --name 參數(shù)用于指定即將創(chuàng)建運行的容器的名稱(唯一) -i 參數(shù)指的是以鏡像運行的容器中的標(biāo)準(zhǔn)輸入是打開的 -t 參數(shù)指的是為創(chuàng)建的容器分配tty終端 /bin/bash 命令指的是容器創(chuàng)建完畢啟動的命令 2、docker start containerId/containerName 重新啟動容器(docker重啟時,會沿用docker run命令時指定的參數(shù)來運行) 3、docker stop containerId/containerName 停止容器 4、docker run --name daemon_dave -d ubuntu(守護(hù)式容器) -d 參數(shù)說明該容器在后臺運行 5、docker logs [options] containerId/containerName docker logs containerId/containerName:輸出此容器的log -f 參數(shù) 動態(tài)打印容器運行時的log日志 -tf 參數(shù) 給日志添加時間 --tail number 參數(shù)用于獲取日志的最后幾行內(nèi)容 6、docker top containerId/containerName 查看容器內(nèi)部運行的進(jìn)程 7、docker exec [options] containerId/containerName [shell] docker exec:在容器內(nèi)部額外啟動新進(jìn)程 -d: 后臺進(jìn)程 -i -t:交互式進(jìn)程 8、docker run --restart=[param] ... --restart=always:無論容器退出碼是多少,都自動重啟容器 --restart=on-failure:5:當(dāng)退出碼是非0時,自動重啟5次 9、docker ps docker ps 命令顯示當(dāng)前正在運行的容器 docker ps -a 顯示所有容器 docker ps -l 顯示最新創(chuàng)建的一個容器 docker ps -l -q 顯示最新創(chuàng)建的一個容器的id 10、docker run -p/-P -p: 8080:80 將容器內(nèi)的80端口綁定到了本地宿主機(jī)的8080端口 127.0.0.1:8080:80 將容器內(nèi)的80端口綁定到了本地宿主機(jī)的127.0.0.1這個IP的8080端口 127.0.0.1::80 將容器內(nèi)的80端口綁定到了本地宿主機(jī)的127.0.0.1這個IP的一個隨機(jī)端口 -P: 將容器內(nèi)的80端口對本地宿主機(jī)公開,并且綁定到宿主機(jī)的一個隨機(jī)端口上 11、docker inspect containerId/containerName 查看容器詳細(xì)信息 12、docker port containerId/containerName 查看容器端口映射情況
鏡像相關(guān)
1、docker images docker images:查找docker宿主機(jī)所有的鏡像,后面加鏡像名可查看指定鏡像的信息 2、docker search XXX 用于查看XXX相關(guān)的鏡像 鏡像一般存儲在鏡像倉庫中(用戶倉庫:用戶名/倉庫名),并打上標(biāo)簽 3、docker commit docker commit:構(gòu)建鏡像 docker commit -m "A new custom image" -a "James Turnbull" [容器Id] [倉庫名/鏡像名:tag] -m:提交信息 -a:提交人信息 4、基于dockerfile構(gòu)建鏡像 docker build -t="倉庫名/鏡像名:tag" . .:代表從當(dāng)前目錄下查找Dockerfile,也可以指定git倉庫 5、dockerfile命令 CMD: 指定容器要啟動時要運行的命令,一個dockerfile只有一個CMD命令生效, 且如果docker run時指定了命令,會覆蓋dockerfile的CDM指定的命令。 ENTRYPOINT: 指定容易啟動時要運行的命令,一般不會被覆蓋,可以通過docker run --entrypoint覆蓋 WORKDIR: dockerfile后續(xù)指令的工作目錄 EVN: ENV TARGET_DIR /opt/app:指定環(huán)境變量 VOLUME: 用來向基于鏡像創(chuàng)建的容器添加卷, 讓我們可以將數(shù)據(jù)(如源代碼)、數(shù)據(jù)庫或者其他內(nèi)容添加到鏡像中而不是將這些內(nèi)容提交到鏡像中,并且允許我們在多個容器間共享這些內(nèi)容 ADD: 用來將構(gòu)建環(huán)境下的文件和目錄復(fù)制到鏡像中。 ADD 源文件 目的文件位置 COPY: ARG: 用來定義可以在docker build命令運行時傳遞給構(gòu)建運行時的變量,我們只需要在構(gòu)建時使用--build-arg標(biāo)志即可
以上內(nèi)容參考了《第一本Docker書》,如果有不正確的地方,歡迎指出
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/28040.html
摘要:編程書籍的整理和收集最近一直在學(xué)習(xí)深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的東西,發(fā)現(xiàn)深入地去學(xué)習(xí)就需要不斷的去提高自己算法和高數(shù)的能力然后也找了很多的書和文章,隨著不斷的學(xué)習(xí),也整理了下自己的學(xué)習(xí)筆記準(zhǔn)備分享出來給大家后續(xù)的文章和總結(jié)會繼續(xù)分享,先分享一部分的 編程書籍的整理和收集 最近一直在學(xué)習(xí)deep learning深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的東西,發(fā)現(xiàn)深入地去學(xué)習(xí)就需要不斷的去提高自己算法和高數(shù)的能力然后...
閱讀 2132·2023-04-26 03:06
閱讀 3580·2023-04-26 01:51
閱讀 2085·2021-11-24 09:38
閱讀 2452·2021-11-17 17:00
閱讀 2324·2021-09-28 09:36
閱讀 941·2021-09-24 09:47
閱讀 2586·2019-08-30 15:54
閱讀 1554·2019-08-30 15:44