Docker---基本命令

Docker—基本命令

1.查看docker的版本

docker version
[root@localhost yum.repos.d]# docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b
 Built:             Wed Mar 11 01:27:04 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b
  Built:            Wed Mar 11 01:25:42 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

2.搜索镜像

docker search 名称
[root@localhost yum.repos.d]# docker search nginx
NAME                               DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
nginx                              Official build of Nginx.                        12948               [OK]                
jwilder/nginx-proxy                Automated Nginx reverse proxy for docker con…   1768                                    [OK]
richarvey/nginx-php-fpm            Container running Nginx + PHP-FPM capable of…   764                                     [OK]
linuxserver/nginx                  An Nginx container, brought to you by LinuxS…   102                                     
bitnami/nginx                      Bitnami nginx Docker Image                      82                                      [OK]
tiangolo/nginx-rtmp                Docker image with Nginx using the nginx-rtmp…   67                                      [OK]
jc21/nginx-proxy-manager           Docker container for managing Nginx proxy ho…   51                                      
nginxdemos/hello                   NGINX webserver that serves a simple page co…   47                                      [OK]
jlesage/nginx-proxy-manager        Docker container for Nginx Proxy Manager        37                                      [OK]
nginx/unit                         NGINX Unit is a dynamic web and application …   36                                      
nginx/nginx-ingress                NGINX Ingress Controller for Kubernetes         28                                      
privatebin/nginx-fpm-alpine        PrivateBin running on an Nginx, php-fpm & Al…   23                                      [OK]
schmunk42/nginx-redirect           A very simple container to redirect HTTP tra…   18                                      [OK]
centos/nginx-18-centos7            Platform for running nginx 1.8 or building n…   13                                      
nginxinc/nginx-unprivileged        Unprivileged NGINX Dockerfiles                  13                                      
centos/nginx-112-centos7           Platform for running nginx 1.12 or building …   13                                      
blacklabelops/nginx                Dockerized Nginx Reverse Proxy Server.          13                                      [OK]
raulr/nginx-wordpress              Nginx front-end for the official wordpress:f…   12                                      [OK]
nginx/nginx-prometheus-exporter    NGINX Prometheus Exporter                       10                                      
sophos/nginx-vts-exporter          Simple server that scrapes Nginx vts stats a…   7                                       [OK]
mailu/nginx                        Mailu nginx frontend                            6                                       [OK]
bitnami/nginx-ingress-controller   Bitnami Docker Image for NGINX Ingress Contr…   5                                       [OK]
ansibleplaybookbundle/nginx-apb    An APB to deploy NGINX                          1                                       [OK]
wodby/nginx                        Generic nginx                                   0                                       [OK]
centos/nginx-110-centos7           Platform for running nginx 1.10 or building …   0                                

3.下载镜像

docker pull nginx
[root@localhost docker]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
c499e6d256d6: Pull complete 
74cda408e262: Pull complete 
ffadbd415ab7: Pull complete 
Digest: sha256:282530fcb7cd19f3848c7b611043f82ae4be3781cb00105a1d593d7e6286b596
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest

4.查看下载镜像

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

5.查看镜像的信息

docker inspect 镜像id

在这里插入图片描述

6.添加镜像的标签(相当于新生成一个镜像)

docker tag 镜像名:原标签名 镜像名:新标签名
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
[root@localhost docker]# docker tag nginx:latest nginx:web
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
nginx               web                 ed21b7a8aee9        9 days ago          127MB

7.镜像删除

docker rmi 镜像名:标签名
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
nginx               web                 ed21b7a8aee9        9 days ago          127MB
[root@localhost docker]# docker rmi nginx:web 
Untagged: nginx:web
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB

8.导出已经下载好的镜像

docker save -o nginx nginx:latest
[root@localhost docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
[root@localhost docker]# cd /opt
[root@localhost opt]# docker save -o nginx nginx:latest 
[root@localhost opt]# ls -lh nginx 
-rw-------. 1 root root 125M 4月   9 20:23 nginx

9.导入镜像到docker

docker load < 镜像名
[root@localhost opt]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[root@localhost opt]# docker load < nginx 
c3a984abe8a8: Loading layer  72.48MB/72.48MB
99134ec7f247: Loading layer  58.11MB/58.11MB
d37eecb5b769: Loading layer  3.584kB/3.584kB
Loaded image: nginx:latest
[root@localhost opt]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB

10.上传镜像到共有仓库(需要docker官方账号)

登录:

docker login

输入账号,密码

上传:

docker push 镜像名:标签名

11.创建容器(i:输入,t:绑定终端)

docker create -it nginx:latest /bin/bash
[root@localhost opt]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
[root@localhost opt]# docker create -it nginx:latest /bin/bash
4ef193d2930223a81262ea95f8d5fc2789b4c883874a1017f5b9c9597d3c5bf5

12.查看容器:

docker ps -a
[root@localhost opt]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS               NAMES
4ef193d29302        nginx:latest        "/bin/bash"         About a minute ago   Created                                 funny_goodall

13.启动容器(启动后状态为up)

docker start 容器ID
[root@localhost opt]# docker start 4ef193d29302
4ef193d29302
[root@localhost opt]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
4ef193d29302        nginx:latest        "/bin/bash"         4 minutes ago       Up 9 seconds        80/tcp              funny_goodall

14.run命令

(docker run命令会执行从创建容器,开启容器,执行命令,关闭容器等一系列过程)
(如果没有创建容器,没有镜像,就会从下载镜像开始执行,一直到关闭容器)
(执行完成后直接关闭,状态为exited)
docker run 镜像名 /usr/bin/bash -c ls /
/usr/bin/bash指定运行环境,-c指定执行命令,/表示在根目录下
[root@localhost opt]# docker run paigeeworld/centos7 /usr/bin/bash -c ls /
bin
boot
dev
etc
home
lib
lib64
lost+found
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var

15.进入和退出容器(容器得是UP状态)

docker exec -it 容器ID /bin/bash
[root@localhost opt]# docker exec -it 8c2933f02d06 /bin/bash
bash-4.2# ls /
bin  boot  dev	etc  home  lib	lib64  lost+found  media  mnt  opt  proc  root	run  sbin  srv	sys  tmp  usr  var
bash-4.2# exit
exit
[root@localhost opt]# 

16.关闭容器

docker stop 容器ID
[root@localhost opt]# docker stop 8c2933f02d06
8c2933f02d06
[root@localhost opt]# docker ps -a
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS                       PORTS               NAMES
03b1b87b64e0        paigeeworld/centos7   "/usr/bin/bash -c ls…"   21 minutes ago      Exited (0) 21 minutes ago                        stupefied_haslett
8c2933f02d06        paigeeworld/centos7   "/bin/bash"              29 minutes ago      Exited (137) 7 seconds ago                       gifted_yalow
4ef193d29302        nginx:latest          "/bin/bash"              41 minutes ago      Up 37 minutes                80/tcp              funny_goodall

17.导出容器

docker export 容器ID > 容器名
[root@localhost opt]# ls
containerd  nginx  rh
[root@localhost opt]# docker export 4ef193d29302 > nginx_c
[root@localhost opt]# ls
containerd  nginx  nginx_c  rh

18.导入容器(导入容器只会生成镜像,不会生成容器)

cat 容器名 | docker import - 镜像:标签
[root@localhost opt]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              ed21b7a8aee9        9 days ago          127MB
[root@localhost opt]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
4ef193d29302        nginx:latest        "/bin/bash"         About an hour ago   Up 57 minutes       80/tcp              funny_goodall
[root@localhost opt]# ls
containerd  nginx  nginx_c  rh
[root@localhost opt]# cat nginx_c | docker import - nginx:web
sha256:1642b0350e944ca6b17efbb471b8bcdbbe9947f3e4d3e278d185be75292f20a7
[root@localhost opt]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               web                 1642b0350e94        12 seconds ago      125MB
nginx               latest              ed21b7a8aee9        9 days ago          127MB
[root@localhost opt]# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
4ef193d29302        nginx:latest        "/bin/bash"         About an hour ago   Up 59 minutes       80/tcp              funny_goodall

19.删除容器

docker rm 容器ID
批量删除:
docker ps -aq | awk ‘{print "docker rm " $1}’ | bash
原创文章 84 获赞 95 访问量 5895

猜你喜欢

转载自blog.csdn.net/obsessiveY/article/details/105421375