我要输出我学会的Docker命令

首先

我之前发布了一篇文章。
【Docker】在CentOS 7.8的docker上启动nginx。
我想在这篇文章中输出我学到的docker命令。

命令

版本确认

docker --version

【执行案例】

[root@tspdocker yum.repos.d]# docker --version
Docker version 19.03.9, build 9d988398e7
[root@tspdocker yum.repos.d]#

图像相关

确认已获取的容器镜像

    docker image ls
docker image ls

【示例演示】

[root@tspdocker docker]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              9beeba249f3e        8 days ago          127MB
[root@tspdocker docker]#
    docker images
docker images

【执行示例】

[root@tspdocker docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              9beeba249f3e        8 days ago          127MB
[root@tspdocker docker]#

从注册表中搜索图像

docker search <イメージ名>

【示例执行】

[root@tspdocker docker]# docker search centos
NAME                               DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
centos                             The official build of CentOS.                   6012                [OK]
ansible/centos7-ansible            Ansible on Centos7                              129                                     [OK]
consol/centos-xfce-vnc             Centos container with "headless" VNC session …   115                                     [OK]
jdeathe/centos-ssh                 OpenSSH / Supervisor / EPEL/IUS/SCL Repos -  …   114                                     [OK]
centos/mysql-57-centos7            MySQL 5.7 SQL database server                   75
imagine10255/centos6-lnmp-php56    centos6-lnmp-php56                              58                                      [OK]
tutum/centos                       Simple CentOS docker image with SSH access      46
centos/postgresql-96-centos7       PostgreSQL is an advanced Object-Relational  …   44
kinogmt/centos-ssh                 CentOS with SSH                                 29                                      [OK]
pivotaldata/centos-gpdb-dev        CentOS image for GPDB development. Tag names …   11
guyton/centos6                     From official centos6 container with full up …   10                                      [OK]
nathonfowlie/centos-jre            Latest CentOS image with the JRE pre-install …   8                                       [OK]
drecom/centos-ruby                 centos ruby                                     6                                       [OK]
centos/tools                       Docker image that has systems administration …   6                                       [OK]
pivotaldata/centos                 Base centos, freshened up a little with a Do …   4
darksheer/centos                   Base Centos Image -- Updated hourly             3                                       [OK]
pivotaldata/centos-mingw           Using the mingw toolchain to cross-compile t …   3
pivotaldata/centos-gcc-toolchain   CentOS with a toolchain, but unaffiliated wi …   3
miko2u/centos6                     CentOS6 日本語環境                                   2                                       [OK]
blacklabelops/centos               CentOS Base Image! Built and Updates Daily!     1                                       [OK]
mcnaughton/centos-base             centos base image                               1                                       [OK]
indigo/centos-maven                Vanilla CentOS 7 with Oracle Java Developmen …   1                                       [OK]
pivotaldata/centos7-dev            CentosOS 7 image for GPDB development           0
smartentry/centos                  centos with smartentry                          0                                       [OK]
pivotaldata/centos6.8-dev          CentosOS 6.8 image for GPDB development         0
[root@tspdocker docker]#

获取容器映像

docker pull <イメージ名>

【实施示例】

[root@tspdocker docker]# docker pull miko2u/centos6
Using default tag: latest
latest: Pulling from miko2u/centos6
67f15db7c18f: Pull complete
509a26fd7457: Pull complete
fc1eb556a306: Pull complete
a64d7cf12062: Pull complete
Digest: sha256:e0fde5482f052a54b8215300cbe06ec233e0527d70fe8b89e0b4a81be1b30a3c
Status: Downloaded newer image for miko2u/centos6:latest
docker.io/miko2u/centos6:latest
[root@tspdocker docker]#

删除容器镜像

docker rmi <[REPOSITORY] or [IMAGE ID]>

【实行例】

确认要删除的容器。

[root@tspdocker docker]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              9beeba249f3e        8 days ago          127MB
miko2u/centos6      latest              092ba03e36dd        3 years ago         248MB
[root@tspdocker docker]#

→这次删除 “miko2u/centos6″。

删除容器

[root@tspdocker docker]# docker rmi miko2u/centos6
Untagged: miko2u/centos6:latest
Untagged: miko2u/centos6@sha256:e0fde5482f052a54b8215300cbe06ec233e0527d70fe8b89e0b4a81be1b30a3c
Deleted: sha256:092ba03e36ddfcb49881eba3b708f461b7334cc7c595411350b04258495bd160
Deleted: sha256:c6c375cf9281546ef63130efff84f0732fc45bfaca98307eb8055b0acd4392ef
Deleted: sha256:0d222776efc8d8e95f128486c9df597c8f97148d700a585e92dd741b1d237d0c
Deleted: sha256:6128ee232c96b4419361c6855b26025ec74e66490b281f900a332f356554843e
Deleted: sha256:b1b065555b8aba5ae83d5d59d611a6b0cc470e9c14b7e4bee081398309e474a5
[root@tspdocker docker]#

确认容器已被删除。

[root@tspdocker docker]# docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              9beeba249f3e        8 days ago          127MB
[root@tspdocker docker]#

容器启动/停止相关

确认已启动的容器

docker ps
よく使うオプション内容-a全てのコンテナ情報出力

【执行实例】

    docker ps
[root@tspdocker docker]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
b631bfb26b8e        nginx               "nginx -g 'daemon of…"   4 hours ago         Up 4 hours          0.0.0.0:8080->80/tcp   vibrant_engelbart
[root@tspdocker docker]#
    docker ps -a
[root@tspdocker docker]# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                  NAMES
b631bfb26b8e        nginx               "nginx -g 'daemon of…"   4 hours ago         Up 4 hours          0.0.0.0:8080->80/tcp   vibrant_engelbart
[root@tspdocker docker]#

创建容器

docker run -it <イメージ名>
オプションの意味内容-itコンソールに結果を出力

这个命令会同时创建、启动和登录容器。

【示例】

[root@tspdocker docker]# docker run -it ubuntu
root@644f6b5a46b9:/#

启动容器

docker start <CONTAINER IDまたはNAME>

【执行实例】

确认”ubuntu”已被停止。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              11 minutes ago      Exited (0) 13 seconds ago                          intelligent_hamilton
[root@tspdocker docker]#

确认「已退出」的出现

启动”Ubuntu”操作系统。

[root@tspdocker docker]# docker start 644f6b5a46b9
644f6b5a46b9
[root@tspdocker docker]#

→ 「644f6b5a46b9」是容器的ID

确认”ubuntu”已经成功启动。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              12 minutes ago      Up 8 seconds                               intelligent_hamilton
[root@tspdocker docker]#

确认是否「上」。

如果未登录到容器,停止容器。

docker stop <CONTAINER IDまたはNAME>

【示例执行】

确认“Ubuntu”已启动。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              23 minutes ago      Up 10 minutes                              intelligent_hamilton
[root@tspdocker docker]#

确定“Up”状态。

停止「ubuntu」。

[root@tspdocker docker]# docker stop 644f6b5a46b9
644f6b5a46b9
[root@tspdocker docker]#

请验证「Ubuntu」已经停止运行。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              24 minutes ago      Exited (0) 29 seconds ago                          intelligent_hamilton
[root@tspdocker docker]#

确认「Exited」这个状态

如果已登录到容器中,停止容器。

(Paraphrase in Chinese: 如果在容器中登录,停止容器。)

exit

以下为一个例子:
1. 登录到”ubuntu”的容器

[root@tspdocker docker]# docker attach 644f6b5a46b9
root@644f6b5a46b9:/#

② 执行「退出」

root@644f6b5a46b9:/# exit
exit
[root@tspdocker docker]#

③ 确认“Ubuntu”已停止运行。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              30 minutes ago      Exited (0) 2 minutes ago                          intelligent_hamilton
[root@tspdocker docker]#

确认「Exited」状态

登录到正在运行的容器中。
(I apologize if my Chinese translation is not accurate.)

    attach
docker attach <CONTAINER IDまたはNAME>

【例子】

确认”ubuntu”已经启动。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              35 minutes ago      Up 11 seconds                              intelligent_hamilton
[root@tspdocker docker]#

确认能够登录到“Ubuntu”容器。

[root@tspdocker docker]# docker attach 644f6b5a46b9
root@644f6b5a46b9:/#

※在退出时,请按顺序按下“Ctrl”键,然后按下“p”键,再按下“q”键。

root@644f6b5a46b9:/# read escape sequence
[root@tspdocker docker]#
    exec
docker exec -it <CONTAINER IDまたはNAME> /bin/bash
オプション名内容i標準入力(STDIN)を開いたままにするt擬似ttyに接続する。ディスプレイ(STDOUT)をつなぐイメージ

【示例执行】

确认”Ubuntu”已经启动。

[root@tspdocker docker]# docker ps -a | grep ubuntu
644f6b5a46b9        ubuntu              "/bin/bash"              35 minutes ago      Up 11 seconds                              intelligent_hamilton
[root@tspdocker docker]#

确认可以登录到 “Ubuntu” 容器。

[root@tspdocker docker]# docker exec -it 644f6b5a46b9 /bin/bash
root@644f6b5a46b9:/#

※当你要退出时,按住Ctrl键,然后按下p键和q键,按这个顺序按下。

root@644f6b5a46b9:/# read escape sequence
[root@tspdocker docker]#

请参照下文

创建Docker容器,启动到停止
Docker命令备忘录
在Docker容器内操作的attach和exec区别
适用于初学者的Docker基本命令清单(新旧风格兼容)

广告
将在 10 秒后关闭
bannerAds