0
点赞
收藏
分享

微信扫一扫

Docker入门

Star英 2021-09-26 阅读 54

一、确保Docker以及就绪

[root@localhost harbor]# docker info 
Containers: 10
 Running: 10
 Paused: 0
 Stopped: 0
Images: 33
Server Version: 18.09.6
......

查看启用的网络插件

[root@localhost harbor]# curl http://127.0.0.1:2375/info 2> /dev/null | jq .Plugins.Network
[
  "bridge",
  "host",
  "macvlan",
  "null",
  "overlay"
]

二、创建交互式容器

关键参数: -it

[root@localhost harbor]# docker run -it ubuntu /bin/bash
root@1b0d5952d724:/# 

使用第一个容器

root@1b0d5952d724:/# hostname 
1b0d5952d724
root@1b0d5952d724:/# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    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
132: eth0@if133: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:ac:11:00:03 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 172.17.0.3/16 brd 172.17.255.255 scope global eth0
       valid_lft forever preferred_lft forever
root@1b0d5952d724:/# ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.2  18496  1996 pts/0    Ss   03:30   0:00 /bin/bash
root        319  0.0  0.1  34388  1460 pts/0    R+   03:31   0:00 ps aux

宿主机上看容器

使用ctrl+p,ctrl+q退出容器,这样退出不会导致容器停止,暂时先不要想为什么。

docker top 1b0d5952d724

可以看到容器里正在运行的进程,进程号是112401,但在容器内部查看,进程号是1。看看cgroup和namespace的配置

[root@localhost harbor]# cat /proc/112401/cgroup 
11:blkio:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
10:cpuacct,cpu:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
9:devices:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
8:pids:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
7:cpuset:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
6:perf_event:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
5:hugetlb:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
4:freezer:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
3:net_prio,net_cls:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
2:memory:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a
1:name=systemd:/docker/1b0d5952d7247fe5dc8302db67429974a7264c49f9d25d10077cc0fadc1ff72a

[root@localhost ~]# ls -l /proc/112401/ns/
总用量 0
lrwxrwxrwx. 1 root root 0 6月  29 11:49 ipc -> ipc:[4026533171]
lrwxrwxrwx. 1 root root 0 6月  29 11:49 mnt -> mnt:[4026533169]
lrwxrwxrwx. 1 root root 0 6月  29 11:30 net -> net:[4026533174]
lrwxrwxrwx. 1 root root 0 6月  29 11:49 pid -> pid:[4026533172]
lrwxrwxrwx. 1 root root 0 6月  29 11:49 user -> user:[4026531837]
lrwxrwxrwx. 1 root root 0 6月  29 11:49 uts -> uts:[4026533170]

二、创建守护式容器

关键参数: -d

[root@localhost ~]# docker run -itd -P httpbin
dc551548f6116f7fd5b315c8a954c6f715dd9b66ac71dc64395c07e7ccb60a05
[root@localhost ~]# docker ps -l
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                   NAMES
dc551548f611        httpbin             "gunicorn -b 0.0.0.0…"   3 seconds ago       Up 3 seconds        0.0.0.0:32771->80/tcp   peaceful_joliot
[root@localhost ~]# curl http://127.0.0.1:32771/anything
{
  "args": {}, 
  "data": "", 
  "files": {}, 
  "form": {}, 
  "headers": {
    "Accept": "*/*", 
    "Host": "127.0.0.1:32771", 
    "User-Agent": "curl/7.29.0"
  }, 
  "json": null, 
  "method": "GET", 
  "origin": "172.17.0.1", 
  "url": "http://127.0.0.1:32771/anything"
}

在容器内部运行进程

[root@localhost ~]# docker exec dc551548f611 date
Sat Jun 29 06:04:24 UTC 2019
[root@localhost ~]# docker exec dc551548f611 hostname
dc551548f611

停止守护式容器

# 发送SIGTERM信号
[root@localhost ~]# docker stop dc551548f611
# 发送SIGKILL信号
[root@localhost ~]# docker kill dc551548f611

深入容器

[root@localhost ~]# docker inspect --format '{{ .State.Running}}' dc551548f611
true
[root@localhost ~]# docker inspect --format '{{ .Image}}' dc551548f611
sha256:305d6a750a4ee5d91da03ca1e26f94aa5044cc5c7b0cd24ac79ca53bb9539a39

删除容器

[root@localhost ~]# docker rm dc551548f611
Error response from daemon: You cannot remove a running container......
[root@localhost ~]# docker rm -f dc551548f611
dc551548f611
[root@localhost ~]# docker rm -f `docker ps -aq`
b21b36b78fb0
c67cf83e002b
4b291ac42e5e
1b0d5952d724
183b9371b908
91427f4f49fa
3ad3a55e612c

容器命名

三种方式,短格式只要可以唯一确认一个容器即可。

  • 长格式
    b11607e88fe79e93b93ad95550fcad38e41aec7bb34d3eb640a6bd2ee73e1859
  • 短格式
    b11607e88
  • 文本
    nginx-web

Docker统计信息

CONTAINER ID        NAME                     CPU %               MEM USAGE / LIMIT     MEM %               NET I/O             BLOCK I/O           PIDS
38a9fde684a6        nginx                    0.00%               1.496MiB / 972.6MiB   0.15%               656B / 0B           5.02MB / 0B         2
83d52f188e7a        harbor-jobservice        0.09%               6.246MiB / 972.6MiB   0.64%               69kB / 810kB        36.1MB / 0B         8
4c752b0054f1        harbor-portal            0.00%               1.395MiB / 972.6MiB   0.14%               3.69kB / 7.31kB     3.11MB / 0B         2
9044544afa43        harbor-core              0.00%               8.539MiB / 972.6MiB   0.88%               48.5kB / 37.2kB     46.9MB / 0B         8
61419c0a43ae        registry                 0.00%               6.539MiB / 972.6MiB   0.67%               8.74kB / 10.4kB     33.3MB / 0B         7
db25076d56ad        harbor-db                0.06%               5.824MiB / 972.6MiB   0.60%               7.59kB / 12.8kB     25.4MB / 256kB      10
8df23e5f7cf4        redis                    0.27%               1.758MiB / 972.6MiB   0.18%               810kB / 65.8kB      6.23MB / 0B         5
f56e5de493dc        registryctl              0.00%               1.539MiB / 972.6MiB   0.16%               6.7kB / 4.41kB      9.68MB / 0B         5
a38569a80146        harbor-log               2.97%               1.949MiB / 972.6MiB   0.20%               36.7kB / 5.87kB     4.68MB / 16.4kB     11
ce3c7d3d3633        mystifying_brahmagupta   0.00%               404KiB / 972.6MiB     0.04%               656B / 0B           188kB / 0B          1
举报

相关推荐

0 条评论