docker常用命令

1 构建镜像

构建镜像,要求context中含有Dockerfile文件
docker build -t build_repo/ljing …/docker_ljing_web/

启动构建流程,要求context中含有docker-compose.yml文件
docker-compose up -d

总结:

  1. Dockerfile 记录单个镜像的构建过程;
  2. docker-compse.yml 记录一个项目(project, 一般是多个镜像)的构建过程;

2 查看镜像

docker images

3 启动镜像(以8889端口映射容器内80端口)

docker run -p 8889:80 -d build_repo/ljing

启动镜像
docker run -it -d -p 7777:80 --name nginx7777 374e7ef78d04

4 查看全部容器实例(Running + Exited)

docker ps -a

5 bash方式进入容器shell中

docker exec -it 536a02796da7 /bin/bash

6 查看docker容器日志

docker logs #一次性打印默认的输出日志
docker logs -f ${container_name} #持续追踪打印后续的日志
docker logs --tail 10 -tf 9a21b11e8a3c #打印最后10行,并持续追踪打印,并显示时间戳

[root@techtest204-53 backup]# docker logs --help
Usage:	docker logs [OPTIONS] CONTAINER
Fetch the logs of a container
Options:
      --details        Show extra details provided to logs
  -f, --follow         Follow log output
      --help           Print usage
      --since string   Show logs since timestamp
      --tail string    Number of lines to show from the end of the logs (default "all")
  -t, --timestamps     Show timestamps

7 删除container:

docker rm -f container_id

8 删除image(只有删除依赖的container list,才可以删除image):

docker rmi build_repo/ljing

9 探查镜像

docker image inspect --format=’{{.RepoTags}} {{.Id}} {{.Parent}}’ $(docker image ls -q --filter since=374e7ef78d04)

10 查看docker内应用占用的内存大小

(grep -w参数,精准匹配到单词report,而不会匹配到myreport):
docker stats|grep $(docker ps -a|grep -w “report”|awk ‘{print $1}’)
edf549a9d121 0.01% 1.524 GiB / 64 GiB 2.38% 15.2 MB / 3.9 MB 0 B / 53.8 MB 311

docker stats

CONTAINER           CPU %               MEM USAGE / LIMIT
eaf549a9d121        18.62%              1.819 GiB / 64 GiB
eaf2ba2aa591        0.22%               197.4 MiB / 16 GiB
5ac6a20acaaa        1.39%               3.193 GiB / 16 GiB
8af080c76489        1.02%               2.845 GiB / 16 GiB
ba0614082211        0.07%               9.413 GiB / 16 GiB
aa1b2c2489fa        0.19%               2.932 GiB / 16 GiB
9a8c21f17ac3        0.05%               14.85 MiB / 251.8 GiB
9a807cf4d4fb        0.00%               140.1 MiB / 10 GiB
8a4e98ec9723        0.00%               972 KiB / 1 GiB
3a9f040ec2d9        0.00%               268 KiB / 1 GiB
aa0541f1c70c        0.61%               1.173 GiB / 30 GiB
aa098a1dafc3        0.06%               17.52 MiB / 251.8 GiB
2a1c91746037        0.07%               2.664 GiB / 16 GiB
7a15c0925d48        0.00%               436 KiB / 1 GiB
2a32ba3c3c22        0.19%               3.43 GiB / 16 GiB
aa71d9efd825        0.41%               3.458 GiB / 16 GiB
ca90be3f4570        0.07%               186.7 MiB / 16 GiB
7a1f63a501c0        0.06%               146.9 MiB / 251.8 GiB
8a39142d66b4        0.05%               28.57 MiB / 251.8 GiB
7a7d451e9ca5        0.17%               2.845 GiB / 16 GiB
1a2aace34f09        0.24%               3.028 GiB / 16 GiB
fadbab66005d        0.00%               220 KiB / 251.8 GiB
daa141b16e73        0.00%               24 KiB / 251.8 GiB
aacbf3bd4eeb        0.00%               276 KiB / 251.8 GiB
da7f7052585c        0.07%               1.355 MiB / 251.8 GiB
0a56f72a1184        0.06%               160 MiB / 16 GiB
9a31be5aac20        0.07%               288.4 MiB / 16 GiB
da0951ec8b0d        0.07%               126.5 MiB / 4 GiB
1ac3b7ac3982        0.08%               3.456 GiB / 16 GiB
3a141c17c3d9        0.00%               8 KiB / 24 GiB
aaa2217334c3        0.28%               791 MiB / 16 GiB
ea0cf0a69be0        1.12%               2.49 GiB / 20 GiB
5a204d69fd2b        0.66%               2.595 GiB / 20 GiB
faa084525630        0.84%               2.449 GiB / 20 GiB

默认会显示容器ID,如果想显示容器名,用如下命令:
docker stats $(docker ps --format={{.Names}}) --查全部的

按内存占用比例倒序排列,取前50列
docker stats --no-stream | sort -k 8 -rn|head -n 100

c4cddf9b268c        0.23%               2.885 GiB / 4 GiB       72.14%              0 B / 0 B           22.8 MB / 8.19 kB   47
c9b955827b0c        0.26%               2.795 GiB / 4 GiB       69.88%              0 B / 0 B           116 MB / 0 B        42
ea5264b3ffc4        1.28%               36.1 GiB / 64 GiB       56.40%              1.77 GB / 646 MB    9.4 GB / 374 MB     419
287ec132d15e        1.14%               29.3 GiB / 64 GiB       45.78%              342 MB / 282 MB     1.56 GB / 167 MB    383
1479fed8fdd0        0.44%               27.67 GiB / 64 GiB      43.24%              1.61 GB / 643 MB    19.8 GB / 825 MB    316
a0b7c2a9f0ca        0.49%               26.55 GiB / 64 GiB      41.48%              1.34 GB / 583 MB    21.4 GB / 871 MB    319
925a10d6b8b0        0.56%               20.79 GiB / 64 GiB      32.49%              1.05 GB / 816 MB    10.6 GB / 584 MB    372
899099d3e6d1        0.06%               648.4 MiB / 2 GiB       31.66%              0 B / 0 B           11.7 MB / 0 B       28
102dd286878a        0.33%               3.947 GiB / 16 GiB      24.67%              0 B / 0 B           32.3 MB / 4.1 kB    43
2f32ba3c3c22        2.74%               3.55 GiB / 16 GiB       22.19%              0 B / 0 B           369 MB / 1.34 MB    78
58c6a20acaaa        0.19%               3.536 GiB / 16 GiB      22.10%              0 B / 0 B           1.52 GB / 4.71 MB   78
88f080c76489        1.53%               3.53 GiB / 16 GiB       22.06%              0 B / 0 B           1.87 GB / 40.3 MB   79
737d451e9ca5        0.58%               3.509 GiB / 16 GiB      21.93%              0 B / 0 B           8.67 GB / 5.53 MB   77
ad71d9efd825        0.27%               3.508 GiB / 16 GiB      21.92%              0 B / 0 B           1.52 GB / 5.11 MB   76
28b1bd43821f        0.18%               3.457 GiB / 16 GiB      21.60%              0 B / 0 B           24.9 GB / 8.19 kB   59
152aace34f09        0.13%               3.448 GiB / 16 GiB      21.55%              0 B / 0 B           7.72 GB / 18.5 MB   78
1d83951bb647        0.13%               3.366 GiB / 16 GiB      21.04%              0 B / 0 B           36.9 GB / 1.24 GB   77
57204d69fd2b        0.82%               3.551 GiB / 20 GiB      17.76%              0 B / 0 B           69.4 GB / 4.83 GB   83
f7a084525630        0.85%               3.521 GiB / 20 GiB      17.61%              0 B / 0 B           242 GB / 20.5 GB    103
ef0cf0a69be0        0.65%               3.465 GiB / 20 GiB      17.32%              0 B / 0 B           64.7 GB / 4.6 GB    84
d90951ec8b0d        0.08%               692.8 MiB / 4 GiB       16.92%              0 B / 0 B           2.9 GB / 69.6 kB    41
2d1c91746037        0.05%               2.697 GiB / 16 GiB      16.85%              0 B / 0 B           9.29 GB / 98.3 kB   59
c490be3f4570        0.04%               1.377 GiB / 16 GiB      8.61%               0 B / 0 B           150 GB / 1.74 GB    55
a90541f1c70c        0.74%               2.065 GiB / 30 GiB      6.88%               314 MB / 3.89 GB    132 GB / 3.92 GB    498
9431be5aac20        0.06%               1020 MiB / 16 GiB       6.23%               0 B / 0 B           173 GB / 1.72 GB    60
7108d1a0effa        0.06%               156.5 MiB / 8 GiB       1.91%               3.57 GB / 2.4 GB    77.4 GB / 1.06 TB   16
0656f72a1184        0.06%               296.1 MiB / 16 GiB      1.81%               0 B / 0 B           12.8 GB / 168 MB    34
e6e720f57d5d        0.07%               40.9 MiB / 16 GiB       0.25%               1.37 GB / 3.92 GB   199 MB / 39.6 GB    20
8be8e4e6ea64        0.07%               37.85 MiB / 16 GiB      0.23%               684 MB / 1.51 GB    145 MB / 35.7 GB    20
a718e367b3bf        0.03%               32.38 MiB / 16 GiB      0.20%               778 MB / 1.94 GB    158 MB / 39.6 GB    20
2de16f9b594a        0.07%               30.44 MiB / 16 GiB      0.19%               753 MB / 1.8 GB     166 MB / 40.2 GB    20
d47f8875f59c        0.05%               21.03 MiB / 16 GiB      0.13%               715 MB / 1.68 GB    132 MB / 39.6 GB    20
61b53185154b        42.94%              189.2 MiB / 251.8 GiB   0.07%               0 B / 0 B           41 kB / 0 B         160
7115c0925d48        0.00%               284 KiB / 1 GiB         0.03%               12.7 MB / 239 MB    165 MB / 8.19 kB    3
319f040ec2d9        0.00%               300 KiB / 1 GiB         0.03%               6.86 MB / 197 MB    89.5 MB / 8.19 kB   3
a6098a1dafc3        0.03%               25.57 MiB / 251.8 GiB   0.01%               3.94 GB / 432 MB    1.28 GB / 74.1 GB   19
797f8759288e        0.00%               1.082 MiB / 8 GiB       0.01%               1.72 MB / 28.5 MB   19.8 MB / 8.19 kB   3
fcdbab66005d        0.00%               8 KiB / 251.8 GiB       0.00%               444 kB / 1.12 kB    0 B / 0 B           2
d1a141b16e73        0.00%               8 KiB / 251.8 GiB       0.00%               445 kB / 1.03 kB    0 B / 0 B           2
CONTAINER           CPU %               MEM USAGE / LIMIT       MEM %               NET I/O             BLOCK I/O           PIDS
aacbf3bd4eeb        0.00%               8 KiB / 251.8 GiB       0.00%               446 kB / 1.3 kB     0 B / 0 B           2
a78a9613d26e        0.00%               304 KiB / 251.8 GiB     0.00%               80.9 kB / 648 B     0 B / 12.7 MB       2
814e98ec9723        0.00%               36 KiB / 1 GiB          0.00%               1.17 MB / 15.9 MB   12.2 MB / 0 B       3
3c141c17c3d9        0.00%               8 KiB / 24 GiB          0.00%               0 B / 0 B           9.96 GB / 883 MB    4

docker stats report --只差report应用的
具体用法,详见:https://docs.docker.com/engine/reference/commandline/stats/?spm=a2c6h.13066369.0.0.7c311b13tSpREw

11 容器内操作

11.1 容器内为变量设置别名

vim /etc/profile
alias ll = ‘ls -al’

11.2 docker安装centos后没有ifconfig命令解决办法

yum install net-tools wget

docker ps -a|awk ‘{print $1}’

12 杂项

12.1 Dockerfile中COPY与ADD区别

docker 指令学习
1 COPY
2 ADD
所有文件的复制均使用COPY命令,仅在需要自动解压缩的场合下使用 ADD

12.2 Dockerfile中 CMD ENTRYPOINT 区别

12.2 清理所有处于终止状态的容器

docker rm $(docker ps -a -q)
-q, --quiet Only display numeric IDs
*注意: 该命令视图删除所有的包括还在运行的容器,docker rm 默认并不会删除运行中的容器,除非你显示的添加了 -f 参数。

12.3 设置中国时区

默认情况下,docker里的时区是按格林尼治时间计算,即晚于北京时间8个小时,可按如下方式进行时区的设置:
#设置时区
RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo ‘Asia/Shanghai’ >/etc/timezone

12.4 关于常驻进程的说明

Docker启动后,后台设置一常驻进程,否则容器启动后立即关闭:
docker run -itd -p 4000:4000 --name offline_docker_docs docs/docker.github.io:latest /bin/sh -c "while true; do echo hello world; sleep 1; done"
docker run -itd -p 4000:4000 --name offline_docker_docs docs/docker.github.io:latest /bin/sh -c "tail -f /dev/null"

12.5 批量操作容器

docker中 启动所有的容器命令

    docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)

docker中 关闭所有的容器命令

   docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2)

tail -n +2表示从第二行开始向后显示

13 容器<–>宿主机 文件拷贝

13.1 宿主机 —> 容器

docker cp /home/asdf/msyh.ttf ${容器名}:/usr/share/fonts/win

13.2 容器 —> 宿主机

docker cp ${容器名}:/usr/share/fonts/win /home/asdf/msyh.ttf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值