日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

docker可以把应用及其相关的_Docker相关命令应用

發(fā)布時(shí)間:2025/4/16 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker可以把应用及其相关的_Docker相关命令应用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Docker命令

-a stdin:?指定標(biāo)準(zhǔn)輸入輸出內(nèi)容類型,可選 STDIN/STDOUT/STDERR 三項(xiàng);

-d:?后臺(tái)運(yùn)行容器,并返回容器ID;

-i:?以交互模式運(yùn)行容器,通常與 -t 同時(shí)使用;

-t:?為容器重新分配一個(gè)偽輸入終端,通常與 -i 同時(shí)使用;

--name="nginx-lb":?為容器指定一個(gè)名稱;

--dns 8.8.8.8:?指定容器使用的DNS服務(wù)器,默認(rèn)和宿主一致;

--dns-search example.com:?指定容器DNS搜索域名,默認(rèn)和宿主一致;

-h "mars":?指定容器的hostname;

-e username="ritchie":?設(shè)置環(huán)境變量;

--env-file=[]:?從指定文件讀入環(huán)境變量;

--cpuset="0-2" or --cpuset="0,1,2":?綁定容器到指定CPU運(yùn)行;

-m :設(shè)置容器使用內(nèi)存最大值;

--net="bridge":?指定容器的網(wǎng)絡(luò)連接類型,支持 bridge/host/none/container:?四種類型;

--link=[]:?添加鏈接到另一個(gè)容器;

--expose=[]:?開放一個(gè)端口或一組端口;

1.Docker常用命令講解進(jìn)程

docker images查看本地鏡像倉庫

docker rmi [image id] ?刪除本地鏡像倉庫中的鏡像image id為需要?jiǎng)h除的鏡像ID

docker pull [image name]:[tag]下載鏡像到本地鏡像倉庫,image name鏡像名稱,tag鏡像版本

docker search [keyword]查看本地鏡像內(nèi)容,keyword為鏡像名稱的關(guān)鍵字,不用輸入全部鏡像名。

docker run -d [image]把鏡像執(zhí)行成虛擬環(huán)境

docker build -t [image name] .

docker build -t [image name] -f [dockerfile] .

docker tag [original image name] [new image name]

docker tag [original image name]:[tag] [new image name]:[tag]

docker run -it [image] bash? ? 把鏡像執(zhí)行成虛擬環(huán)境,并直接進(jìn)入該docker虛擬環(huán)境中(等同于docker exec -it [image] bash)

docker exec -it [image] bash???把鏡像執(zhí)行成虛擬環(huán)境,并直接進(jìn)入該docker虛擬環(huán)境中

docker run -d -p 8080:80 nginx訪問外部的iP端口是8080其實(shí)就是對(duì)應(yīng)內(nèi)部ip的80端口執(zhí)行的是nginx動(dòng)作

docker run -d v /data:/data nginx把服務(wù)器的資料掛載到docker內(nèi)部的資料,使得在docker內(nèi)部使用。

docker run -d -e MYENV=test nginx ?把服務(wù)器的環(huán)境變量變成docker內(nèi)部的環(huán)境。

docker network create mynet1創(chuàng)建網(wǎng)卡命名為mynet1

docker ps?查看正在執(zhí)行中docker的container容器,

docker ps -p-p只顯示正在執(zhí)行中container的id號(hào)

docker ps -a ??-a顯示所有的container,包括停止的和正在運(yùn)行的

docker start?[instance-id]? 啟動(dòng)實(shí)例,instance-id實(shí)例ID號(hào)

docker stop[instance-id]?停止實(shí)例,instance-id實(shí)例ID號(hào)

docker attach[instance-id]??使得兩個(gè)窗口的動(dòng)作一致

docker rm [instance-id]???刪除正在運(yùn)行的實(shí)例instance,需先停止該實(shí)例后再刪除

docker rm -f [instance-id]?強(qiáng)制刪除正在運(yùn)行的實(shí)例instance,勿需停止該實(shí)例可直接刪除該實(shí)例

docker rm -f `docker ps -q`?刪除所有正在執(zhí)行的container,``把該執(zhí)行結(jié)果作為前面執(zhí)行刪除操作的參數(shù)來調(diào)用。

[實(shí)例]

[root@docker ~]#docker ps ?查看正在執(zhí)行的container

CONTAINER ID ? ?IMAGE ? ? ? COMMAND ? ? ? ? ?CREATED ? ? ? ?STATUS ? ? ? ?PORTS ? ? ? ? ? NAMES

378e85b45f67 ? ?nginx ? ? "nginx -g 'daemon of ?28 minutes ago ? ? Up 28 minutes ? ?80/tcp ? ? ? ?clever_turing

7fad893a54c4 ? ?nginx ? ? "nginx -g 'daemon of ? 29 minutes ago ? ?Up 29 minutes ? 0.0.0.0:8080->80/tcp ? thirsty_yonath

[root@docker ~]#?docker rm -f `docker ps -q ` ?刪除所有正在執(zhí)行的container

378e85b45f67

7fad893a54c4

[root@docker ~]#docker ps ?查看正在執(zhí)行的container,已經(jīng)被全部刪除

CONTAINER ID ? ?IMAGE ? ? ? COMMAND ? ? ?CREATED ? ? ?STATUS ? ? ? PORTS ? ? ? ? NAMES

[root@docker ~]#?docker ps -a -q ?查看所有的container,不管是正在執(zhí)行的還是被刪除的,-q只顯示instance-id

bebf3f5b8112

0577c4b78979

1d26ba3448f0

3e05321bdbca

4cb7712e3dd7

[root@docker ~]#?docker rm -f `docker ps -q -a ` 強(qiáng)制刪除所有的container,不管是停止的還是在運(yùn)行的。

bebf3f5b8112

0577c4b78979

1d26ba3448f0

3e05321bdbca

4cb7712e3dd7

[root@docker ~]#?docker ps -a -q ?再次查看已經(jīng)沒有container了,都已經(jīng)被刪除了。

2.命令格式:

docker run -it --name mydocker1 [image1] bash#對(duì)image1取個(gè)別名為mydocker1

docker run -it --link mydocker1:mydocker1 [image2] bash把兩個(gè)image連通,使得image1和image2可以互相通訊

3.命令功能:

把兩個(gè)container相互連通通信

3.命令參數(shù):

-it --name 先對(duì)第一個(gè)image1取名稱

-it --link 連接到第一個(gè)image,相互之間可以通訊

實(shí)例一

首先打開一個(gè)窗口輸入以下命令,打開一個(gè)docker窗口1

[root@docker ~]# docker run -it --name node1 node bash

root@f2765d5fd9c8:/#

[root@docker ~]#docker run -it --link node1:node1 node bash

root@e85d11098482:/#

在第二個(gè)docker窗口下輸入以下命令:

root@e85d11098482:/# ping node1 ?顯示node1的ip地址是172.16.0.16

PING node1 (172.17.0.16): 56 data bytes

64 bytes from 172.17.0.16: icmp_seq=0 ttl=64 time=0.110 ms

64 bytes from 172.17.0.16: icmp_seq=1 ttl=64 time=0.073 ms

64 bytes from 172.17.0.16: icmp_seq=2 ttl=64 time=0.075 ms

64 bytes from 172.17.0.16: icmp_seq=3 ttl=64 time=0.094 ms

^C--- node1 ping statistics ---

4 packets transmitted, 4 packets received, 0% packet loss

round-trip min/avg/max/stddev = 0.073/0.088/0.110/0.000 ms

在第一個(gè)docker窗口下輸入以下命令,查看該窗口的IP地址正是node1的IP地址

root@f2765d5fd9c8:/# ip addr

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

34: eth0@if35: mtu 1500 qdisc noqueue state UP group default

link/ether 02:42:ac:11:00:10 brd ff:ff:ff:ff:ff:ff

inet 172.17.0.16/16 scope global eth0

valid_lft forever preferred_lft forever

inet6 fe80::42:acff:fe11:10/64 scope link

valid_lft forever preferred_lft forever

實(shí)例二

attach實(shí)例,通過attach使得兩個(gè)窗口顯示一模一樣:

[root@docker docker]# docker run -it nginx bash

root@0f8a31139121:/# ls

bin? boot? devetc? home? liblib64? media? mnt? optproc? root? run? sbin? srv? sys? tmp? u

root@0f8a31139121:/#

[root@docker ~]# docker ps? -q? 先查看正在運(yùn)行的docker進(jìn)程

0f8a31139121

[root@docker ~]# docker attach 0f8a31139121

ls

bin? boot? devetc? home? liblib64? media? mnt? optproc? root? run? sbin? srv? sys? tmp? u

root@0f8a31139121:/#

實(shí)例三:

docker network create mynet1實(shí)例:

[root@docker docker]#docker network create mynet2? 建立網(wǎng)卡,命名為mynet2

Error response from daemon: network with name mynet2 already exists? ?#提示該名稱的網(wǎng)卡已存在

[root@docker docker]# docker network create mynet1

647cb9fd3d7162da73aaf12eba4dbcd88b7c0790f6eda617f6635b5c4eb13f7e

[root@docker docker]#docker network create mynet3

aa6f9827251c45cd88f308108bd78bb6ef719ed04d37213277217c95b615f17c

[root@docker docker]# docker run -d --name c1 --net mynet1 nginx? 打開nginx,并命名為c1,且設(shè)定網(wǎng)卡為mynet1剛建立的網(wǎng)卡

b772bb24c6457d6c0528a16d3820841f06d934a10809dd266862687222344134

[root@docker docker]#? docker run -d --name c2 --net mynet2 nginx

66221df665551e658a81e169611d32179d119fc17b684a6ba9bca1b16b2a5b3f

[root@docker docker]#?docker run -d --name c3 nginx? 打開nginx程序,并命名為c3,但不指定網(wǎng)卡。

54fc6b30e9838f0e261ba82562de5a2a00e07667b46baf2f8f6f701107f80251

[root@docker docker]#?docker ps

CONTAINER ID? ? ? ? IMAGE? ? ? ? ? ? ? ?COMMAND? ? ? ? ? ? ? ? ? CREATED? ? ? ? ? ? ?STATUS? ? ? ? ? ? ? PORTS? ? ? ? ? ? ? ?NAMES

54fc6b30e983? ? ? ? nginx? ? ? ? ? ? ? ?"nginx -g 'daemon off"? ?3 seconds ago? ? ? ?Up 2 seconds? ? ? ? 80/tcp? ? ? ? ? ? ?c3

66221df66555? ? ? ? nginx? ? ? ? ? ? ? ?"nginx -g 'daemon off"? ?19 seconds ago? ? ? Up 18 seconds? ? ? ?80/tcp? ? ? ? ? ? ?c2

b772bb24c645? ? ? ? nginx? ? ? ? ? ? ? ?"nginx -g 'daemon off"? ?28 seconds ago? ? ? Up 27 seconds? ? ? ?80/tcp? ? ? ? ? ? ?c1

[root@docker docker]#docker exec -it c1 bash? #直接進(jìn)入剛才建立的c1 bash

root@b772bb24c645:/#

實(shí)例四:

[root@docker docker]#docker rm -f `docker ps -q -a`

54fc6b30e983

66221df66555

b772bb24c645

[root@docker docker]# docker run -d -p 5000:5000 --name registry registry:2

Unable to find image 'registry:2' locally

2: Pulling from library/registry

9f9a7687cb91: Pull complete

607d8cb26263: Pull complete

305c4b3247bc: Pull complete

09fd65a9f827: Pull complete

5614c459bd0f: Pull complete

7d72978aa116: Pull complete

5a7694fedddd: Pull complete

37213f6a1a3f: Pull complete

6bb73e9857ff: Pull complete

8fe0c76b17fc: Pull complete

Digest: sha256:6cd209f81e188e8eaa13fad9b670fb1a4e9c7776a73b3881b69834fe5ddfb193

Status: Downloaded newer image for registry:2

c88ae6df9e41f06dbfc283585269ed7df0e23621b2357d2e3b73622565512048

[root@docker docker]# docker ps

CONTAINER ID? ? ? ? IMAGE? ? ? ? ? ? ? ?COMMAND? ? ? ? ? ? ? ? ? CREATED? ? ? ? ? ?STATUS? ? ? ? ? ? ? ? PORTS? ? ? ? ? ? ? ? ? ? ? ? NAMES

c88ae6df9e41? ? ? ?registry:2? ? ? ?"/entrypoint.sh /etc/"? ?10 seconds ago? ? ?Up 8 seconds? ?0.0.0.0:5000->5000/tcp? ?registry

[root@docker docker]# docker images

REPOSITORY? ? ? ? ? TAG? ? ? ? ? ? ?IMAGE ID? ? ? ? ? ? CREATED? ? ? ? ? ? ?VIRTUAL SIZE

nginx? ? ? ? ? ? ? ?latest? ? ? ? ? ? ? e076c61a6bf2? ? ? ? 2 weeks ago? ? ? ? ?108.9 MB

node? ? ? ? ? ? ? ? latest? ? ? ? ? ? ? 46ecedfa82d3? ? ? ? 2 weeks ago? ? ? ? ?672.8 MB

registry? ? ? ? ? ? 2? ? ? ? ? ? ? ? ? ?8fe0c76b17fc? ? ? ? 3 months ago? ? ? ? 33.26 MB

[root@docker docker]# docker tag nginx localhost:5000/nginx

[root@docker docker]# docker images

REPOSITORY? ? ? ? ? ? ?TAG? ? ? ? ? ? ? ?IMAGE ID? ? ? ? ? ? CREATED? ? ? ? ? ? ?VIRTUAL SIZE

localhost:5000/nginx? ?latest? ? ? ? e076c61a6bf2? ? ? ? 2 weeks ago? ? ? ? ?108.9 MB

nginx? ? ? ? ? ? ? ? ? latest? ? ? ? ? ? ? e076c61a6bf2? ? ? ? 2 weeks ago? ? ? ? ?108.9 MB

node? ? ? ? ? ? ? ? ? ?latest? ? ? ? ? ? ? 46ecedfa82d3? ? ? ? 2 weeks ago? ? ? ? ?672.8 MB

registry? ? ? ? ? ? ? ?2? ? ? ? ? ? ? ? ? ?8fe0c76b17fc? ? ? ? 3 months ago? ? ? ? 33.26 MB

[root@docker docker]#?docker push localhost:5000/nginx

The push refers to a repository [localhost:5000/nginx] (len: 1)

e076c61a6bf2: Pushed

235c9b4b2c82: Pushed

8bc1215bde0f: Pushed

abc60fac2aea: Pushed

latest: digest: sha256:9a032ad6687bd8a621c6d7dbd29163eff9c35d5e77c04ddef9da52c63c72a934 size: 9566

總結(jié)

以上是生活随笔為你收集整理的docker可以把应用及其相关的_Docker相关命令应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。