『壹』 docker導出帶掛載數據得容器
docker導出帶掛載數據兆悉核得容器步驟如下:
1、查找正在運族掘行的容器id。
2、使用dockerexport命令將陸拿容器導出。
3、查看導出結果,scp命令傳輸到另一台伺服器。
『貳』 docker常用命令
1、 service docker start // 啟動docker
2、 docker images // 查看docker所安裝的鏡像
3、 docker search [name] 查詢某個鏡像 例如查詢mysql docker search mysql
4、 docker pull [name] 拉取某個鏡像 例如mysql docker pull mysql
5、 docker pull [name] [:tag] tag版本肢鍵號 如果不寫默認拉取最新的版本
例如: docker pull mysql:5.7
6、 docker rmi [imgaeId] 刪除命令,imageId是鏡像id
2.1 新建一個新的容器 docker pull centos
2.2 docker run [可選參數] image名字
參數說明
--name="Name" 給容器命名
-d 後台方式運行
-p [主機埠]:[容器埠] 指定容器的埠 例如啟動tomcat 命令: docker run -p 8081:8080 tomcat 解釋:8081是對外訪問(伺服器)的埠。8080是docker裡面的tomcat埠. tomcat是鏡像拉取下來後的名字. 例:若別人訪問。IP+8081埠才能訪問到tomcat啟動的項目
-P 大寫P是隨機指定埠
-it 與容器交互,就是進入到容器裡面
命令: docker run -it [鏡像名稱] /bin/bash 例子: docker run -it centos /bin/bash
docker ps 查看運行派行中的容器
docker ps -q 只查詢運行容器的編號,一般與下面-a合並使用, docker ps -aq
docker ps -a 查看曾經運行過的容器
docker ps -a -n=1 加上-n可以指定查詢最近幾個運行的容器、
Ctrl+p+q 這樣退出就不會停止容器
docker rm -f [容器id] 指定刪除某個運行的容器
docker rm -f $(docker ps -aq) 刪除全部運行的容器
docker start [容器id] 啟動容器
docker restart [容器id] 重啟容器
docker stop [容器id] 停止容器
docker kill [容器id] 強制停止容器
docker run -d [鏡像名] 例如: docker run -d centos
但是有問題, docker ps 查詢不到運行的容器
原因:docker容器用後台運行,就必須要有一個前台進程,docker發現沒有應用,所以就自動停止
docker logs -tf --tail 10 [容器id]
t的意思是時間戳,f保留日誌列印窗口,tail持續列印,10列印最後10條
docker top [容器id]
docker inspect [容器id]
方式一: docker exec -it [containt_id] /bin/bash // 進入該鏡像內部
docker cp [容器id]:[容器路徑] [主機路歷帶巧徑]
『叄』 廢墟圖書館指令台怎麼打開餃子雲
對於廢墟圖書館的指令台,打開餃子雲的具體步驟如下:
1、首先在指令台上輸入「dockerps」命令,查看帆枯宴當前運行的容器。
2、找到名為「v2ray」敗裂或「ssr」或「trojan」等代理軟體的容器ID。
3、輸入「dockerexec-it容器ID/bin/bash」命令,進入該容器的終端。
4、在容器態銀終端內輸入「./jd」命令,即可打開餃子雲。
『肆』 docker裡面- -name命令作用是什麼
給運行的容器命名
使用--name給運行的容器命名(唯一名字),docker ps時可以看到(查看容器),這個名字和id一樣可用於docker的操作例如docker rm xxx(刪除容器)。如果沒有指定,即是隨機的唯一字元串。
『伍』 docker查看日誌命令
如何段磨查看docker日誌,讓我們一起了解一下?
通過docker logs可以查看容器的日誌命令。高效的監控和日誌管理對保持生產系統持續穩定的運行以及排查問題至關重要。在微服務架構中,由於容器的數量眾多以及快速變化的特性使得記錄日誌和監控變得越來越重要。肢滑
docker查看日誌的幾個方式:
1、docker logs --tail=1000 容器名稱 (查看容器前多少行的日誌)(推薦)
2、docker 容器啟動後,可以進入以下位置查看日誌(/var/lib/docker/containers/容器ID/容器ID-json.log)(進入容器內部查看日誌)
3、#查看compose所有容器的運行日誌
docker-compose -f docker-compose-app.yml logs -f
4、#查看compose下某個容器的運行日誌
docker-compose -f docker-compose-app. yml logs -f服務名>
5、# 也可以把compose的容器日誌輸出到日誌文件里去,然後用tail -f隨時查看
docker-compose -f docker-compose-app. yml logs -f >> myDockerCompose.log &
具體操作如下:
docker attach [options] 容器會連接到正在運行的容器,然後將容器的標准輸入、輸出和錯誤流信息附在本地列印出來。命令中options的取值有三種:--detach-keys,--no-stdin,--sig-proxy。
該命令只是進入容器終端,不會啟動新的進程。所以當你同時使用多個窗口進入該容器,所有的窗口都會同步顯示。如果一個窗口阻塞,那麼其他窗口也就握飢斗無法再進行操作。
使用ctrl+c可以直接斷開連接,但是這樣會導致容器退出,而且還stop了。如果想在脫離容器終端時,容器依然運行。就需要使用--sig-proxy這個參數。例如:
$ docker attach --sig-proxy=false mytest
注意: 當使用docker attach連接到容器的標准輸入輸出時,docker使用大約1MB的內存緩沖區來最大化應用程序的吞吐量。如果此緩沖區填滿,那麼輸出或寫入的速度將會受到影響。因此查看應用日誌,可以使用docker logs命令。
『陸』 只查看正在運行的容器和docker主機做了哪些埠映射的命令
Docker container 容器介紹
容器操作
使用 docker 命令行操叢畝作 docker 容器
啟動容器
core@localhost ~ $ docker run
Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Run a command in a new container
-a, --attach=[] Attach to STDIN, STDOUT or STDERR.
-c, --cpu-shares=0 CPU shares (relative weight)
--cap-add=[] Add Linux capabilities
--cap-drop=[] Drop Linux capabilities
--cidfile="" Write the container ID to the file
--cpuset="" CPUs in which to allow execution (0-3, 0,1)
-d, --detach=false Detached mode: run container in the background and print new container ID
--device=[] Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc)
--dns=[] Set custom DNS servers
--dns-search=[] Set custom DNS search domains
-e, --env=[] Set environment variables
--entrypoint="" Overwrite the default ENTRYPOINT of the image
--env-file=[] Read in a line delimited file of environment variables
--expose=[] Expose a port from the container without publishing it to your host
-h, --hostname="" Container host name
-i, --interactive=false Keep STDIN open even if not attached
--link=[] Add link to another container in the form of name:alias
--lxc-conf=[] (lxc exec-driver only) Add custom lxc options --lxc-conf="lxc.cgroup.cpuset.cpus = 0,1"
-m, --memory="" Memory limit (format: <number><optional unit>, where unit = b, k, m or g)
--name="" Assign a name to the container
--net="bridge" Set the Network mode for the container
'bridge'滲孫森: creates a new network stack for the container on the docker bridge
'none': no networking for this container
'container:<name|id>'凱辯: reuses another container network stack
'host': use the host network stack inside the container. Note: the host mode gives the container full access to local system services such as D-bus and is therefore considered insecure.
-P, --publish-all=false Publish all exposed ports to the host interfaces
-p, --publish=[] Publish a container's port to the host
format: ip:hostPort:containerPort | ip::containerPort | hostPort:containerPort
(use 'docker port' to see the actual mapping)
--privileged=false Give extended privileges to this container
--restart="" Restart policy to apply when a container exits (no, on-failure, always)
『柒』 如何打包創建鏡像和運行Docker容器及常用命
在Dockerfile所在目錄執行
docker build -t 10.10.36.213/library/你的鏡像名:版本 .
別忘了最後的點,用來指定Dockerfile的位置
build過程類似這樣:
cos@controller ~/Dockerfile/eureka $ docker build -t 10.10.36.213/library/test:v1.0 .
Sending build context to Docker daemon 78.69 MB
Step 1 : FROM 192.168.16.100/jdk8:8u74
---> d84b155276a9
Step 2 : MAINTAINER jingchaosong [email protected]
---> Using cache
---> 369126ee2c40
Step 3 : ADD eureka-server-1.1-SNAPSHOT.jar /root/
---> Using cache
---> cd3facb762b3
Successfully built cd3facb762b3
push鏡像
docker push 10.10.36.213/library/你的鏡像名:版本
如果出現push失敗的情況,並且提示需要的登錄,請使用以下命令login到私有鏡像倉庫
docker login 10.10.36.213
用戶名admin
密碼Harbor12345
email可以不填
run容器
直接以daemon方式運行
docker run -d --net=mynet 10.10.36.213/library/你的鏡像名:版本 命令
--net=mynet是讓docker調用我們自己的網路插件來分配IP地址,IP地址從我們自己配置的IP池裡獲取
查看啟動的容器的IP地址可以用以下命令
docker inspect container_id | grep IPAddress
交互方式運行
docker run -it --net=mynet 10.10.36.213/library/你的鏡像名:版本
docker run的時候可以加很多參數,如容器的資源配額限制、hostname、掛載本地目錄、DNS等配置,請參看docker run --help
查看容器狀態
查看正在運行的容器的狀態
docker ps
查看所有容器(包括已經Exit容器的狀態)
docker ps -a
刪除容器
docker rm container_id
container_id只需要前幾位字元就可以了,只要能夠區別不同容器即可,不需要輸入全部ID欄位
強制刪除容器
docker rm -f container_id
刪除鏡像
docker rmi image_id
進入容器內部
前提是必須是正在運行的容器
docker exec -it container_id /bin/bash
運行exit退出
查看容器詳細信息
docker inspect container_id
可以看到容器的配置信息和掛載的本地目錄、網路配置、狀態等
『捌』 Docker鏡像操作常用指令有哪些
docker version:查看docker版本;
docker info:查看docker詳細信息;
docker --help:查看docker命令;
鏡像命令
docker images:列出本地主機上的鏡像,REPOSITORY:表示鏡像的倉庫源;TAG:鏡像的標簽;IMAGE
ID:鏡像ID;CREATED:鏡像創建時間;SIZE :鏡像大小,同一個倉庫源可以有多個TAG,可以表示倉庫源的不同版本,使用REPOSITORY:TAG來定義不同的鏡像;
docker images -a:列出本地所有的鏡像;
docker images -p:只顯示鏡像ID;
docker images --digests:顯示鏡像的摘要信息;
docker images --no-trunc:顯示完整的鏡像信息;
docker search tomcat:從Docker Hub上查找tomcat鏡像;
容器命令
docker run [OPTIONS] IMAGE:根據鏡像新建並啟動容器,IMAGE是鏡像ID或鏡像名稱;
docker ps:列出當前所有正在運行的容器;
exit:退出並停止容器;
docker start 容器ID或容器名稱:啟動容器;
docker restart 容器ID或容器名稱:重新啟動容器;
docker stop 容器ID或容器名稱:停止容器;
docker kill 容器ID或容器名稱:強制停止容器;
docker rm 容器ID或容器名稱:刪除容器;
docker rm -f $(docker ps -a -q):刪除多個容器。
『玖』 怎麼獲得docker 查看容器id容器id
熟悉 Linux 技術的人都知道,容器只是昌則利用名字空間進行隔離的進程而已,Docker 在容器實現上也是利用了 Linux 自身的技術。
有時候,我們需要在宿主機上對容器內進行一些操作,當然,這種繞過 Docker 的操作方式並不推念慎薦。
如果你使用的是比較新的 Docker 版本,會仔迅敬尷尬的發現,直接使用系統命令,會無法訪問到容器名字空間。
『拾』 如何查看docker 里某個容器的的啟動命令
1,在容器外部,物理機上,可以用docker inspect查看或者,docker inspect container。
2,如果在容器內部。可以用ps -fe查看。其中1號進程就是啟動命令。
3,Docker會在隔離的容器中運行進程。當運行docker run命令時,Docker會啟動一個進程,並為這個進程分配其獨占的文件系統、網路資源和以此進程為根進程的進程組。在容器啟動時,鏡像可能已經定義了要運行的二進制文件、暴露的網路埠等,但是用戶可以通過docker run命令重新定義(譯者註:docker run可以控制一個容器運行卜攜睜時的行為,它可以覆蓋docker build在構建鏡像時的一些默認配置),這也是為什麼run命令相比於其它命令有如此多的參數的原因。
4,命令格式
5,最基本的docker run命令的格式如下:
$ sudo docker run [OPTIONS] IMAGE[:TAG] [COMMAND] [ARG...]
6,如果需要查看[OPTIONS]的詳細使用說明,請參考Docker關於OPTIONS的章型歲節。這里僅簡要介紹Run所使用到的參數。OPTIONS總起來說可以分隱明為兩類:
設置運行方式:
決定容器的運行方式,前台執行還是後台執行;
設置containerID;
設置網路參數;
設置容器的CPU和內存參數;
設置許可權和LXC參數;
設置鏡像的默認資源,也就是說用戶可以使用該命令來覆蓋在鏡像構建時的一些默認配置。
7,docker run [OPTIONS]可以讓用戶完全控制容器的生命周期,並允許用戶覆蓋執行docker build時所設定的參數,甚至也可以修改本身由Docker所控制的內核級參數。