Docker常用的基础命令【适合新手小白】

学习目标

  • Docker常用命令

  • Docker File

1.Docker常用命令

1.1 镜像命令

1.1.1 检索

语法:IMAGE处写镜像名

docker search [IMAGE]

案例:

[root@localhost ~]# docker search tomcat
NAME                DESCRIPTION                     STARS        OFFICIAL    
tomcat              Apache Tomcat is an ...         2823         [OK]       
tomee               Apache TomEE is an ...          82           [OK]      
dordoka/tomcat      Ubuntu 14.04, Tomcat 8 ba...    55                        
bitnami/tomcat      Bitnami Tomcat Docker Image...  35                        

1.1.2 拉取

从Docker仓库下载镜像到本地,镜像名称格式为  名称:版本号,如果版本号不指定则是最新的版本。如果不知道镜像版本,可以去hub.docker.com 搜索对应镜像查看。

语法:

docker pull IMAGE:TAG

案例:

[root@localhost ~]# docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
647acf3d48c2: Pull complete 
b02967ef0034: Pull complete 
e1ad2231829e: Pull complete 
5576ce26bf1d: Pull complete 
26518d6c686a: Pull complete 
cdb1f4e0dbfd: Pull complete 
1d872b5136cc: Pull complete 
0b9db4d94c97: Pull complete 
03ee64d25ffd: Pull complete 
45a601314df9: Pull complete 
Digest: sha256:93ff3bc7fb766a9bb5bb0d1f925f9d8795594d87e8365164908ddddcdaa75ff4
Status: Downloaded newer image for tomcat:latest
​
[root@localhost ~]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Status: Image is up to date for centos:latest
docker.io/library/centos:latest

1.1.3 列表

列出本地主机上的镜像

语法:

 docker images

案例:

[root@localhost ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
tomcat              latest              904a98253fbf        12 days ago         680MB
redis               3.0                 c44fa74ead88        4 years ago         91.6MB

1.1.4 删除

使用 docker rmi 命令删除镜像。

语法:

docker rmi IMAGE[:tag]

案例:

[root@localhost ~]# docker rmi tomcat
Error: No such image: tomcat
[root@localhost ~]# docker rmi centos
Untagged: centos:latest
Untagged: centos@sha256:93ff3bc7fb766a9bb5bb0d1f925f9d8795594d87e8365164908ddddcdaa75ff4
Deleted: sha256:904a98253fbf7ce6ff0d5410387256c5fe4eedc5ff2fe130c821b6522558b5bf
Deleted: sha256:206994dfd94922826065d850b959c68deeef9095ca9d5bd557b85f87bf589b51
Deleted: sha256:69f5160bcb0daf65f1fbd50300e84e743854a4444d8f4115882d3e58f7d3a9c6
Deleted: sha256:b329f444a8ff570c3e74e5ba117a46fea81c66cf7edd6702983ac3f5909f9036
Deleted: sha256:2d7550a5b4ce1c6e2e3d20d0128aa172d07f185885e0b1d65e35e6a29dff5f53
Deleted: sha256:64b6542ad739abd61f08e686b94ced8a1f1009b692c2d1a9a488e573bf8f533a
Deleted: sha256:c33ddecc5693370b90d554d2d51e988f2dc9bd1e8b06bc9a402221cd8e4d2bfa
Deleted: sha256:d7f374dbcf316119a8cc9c224fdd46b1fcce379e960fb156090494c2bcbadfd7
Deleted: sha256:553dd3d24238e8d51283a8979144ceaa3115a38055b9e6293bdc68b69bcb2c45
Deleted: sha256:517f7948bc279b5f35c839a4979fc3172ca93c1a0d5821e4c23d59c601d62319
Deleted: sha256:a36ba9e322f719a0c71425bd832fc905cac3f9faedcb123c8f6aba13f7b0731b

1.2.容器命令

1.2.1.新建并启动容器

语法:

docker run [options] IMAGE[:TAG]

OPTIONS说明:有些是一个减号,有些是两个减号

  • --name:为容器指定一个名称

  • -p:指定端口映射,hostPost:containerPort

  • -d:后台模式运行容器

案例:

[root@localhost ~]# docker run tomcat
... ...
[root@localhost ~]# docker run --name tomcat_1 -p 8081:8080 tomcat
... ...
[root@localhost ~]# docker run --name tomcat_2 -p 8081:8080 -d tomcat
93de8d28eb0dda52bf161be70510b189b6e0babdb430dd0636fddf45a78f1d71
[root@localhost ~]# 

1.2.2.列出启动容器

语法:

 docker ps [options]

OPTIONS说明:

  • -a :列出当前所有正在运行的容器+历史上运行过的

[root@localhost ~]# docker ps
[root@localhost ~]# docker ps -a

1.2.3.停止容器

语法:

docker stop CONTAINER NAME
或
docker kill CONTAINER NAME #不推荐使用,容易造成容器服务不正常关闭,影响后续使用。
[root@localhost ~]# docker stop tomcat_1
mysql_1 #速度慢
[root@localhost ~]# docker kill tomcat_1
mysql_2 #速度快

1.2.4.启动容器

语法:

docker start CONTAINER NAME

例如:

[root@localhost ~]# docker start tomcat_1
tomcat_1

1.2.5.删除容器

语法:

docker rm CONTAINER NAME

例如:

[root@localhost ~]# docker rm tomcat_1
tomcat_1

1.2.6.与运行中的容器交互

语法:

docker exec [options] CONTAINER NAME [command]

exec说明:

  • 在运行中的容器中执行命令

OPTIONS说明:

  • -i:以交互模式运行容器,通常与-t 连用

  • -t:为容器重新分配一个伪终端,通常与-i 连用

command说明:

  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,用来解释执行linux指令

案例:

[root@localhost ~]# docker run -t --name centos_1 centos:7 
[root@9f9e69a704d3 /]# pwd #命令不起作用
[root@localhost ~]# docker run -i --name centos_5 centos:7 #连终端都没有
​
[root@localhost ~]# docker exec -it tomcat /bin/bash
root@93de8d28eb0d:/usr/local/tomcat# pwd
/usr/local/tomcat
root@93de8d28eb0d:/usr/local/tomcat# ls -l
total 132
-rw-r--r--. 1 root root 18994 Nov  9 22:12 BUILDING.txt
-rw-r--r--. 1 root root  6210 Nov  9 22:12 CONTRIBUTING.md
-rw-r--r--. 1 root root 60269 Nov  9 22:12 LICENSE
-rw-r--r--. 1 root root  2333 Nov  9 22:12 NOTICE
-rw-r--r--. 1 root root  3372 Nov  9 22:12 README.md
-rw-r--r--. 1 root root  6905 Nov  9 22:12 RELEASE-NOTES
-rw-r--r--. 1 root root 16517 Nov  9 22:12 RUNNING.txt
drwxr-xr-x. 2 root root  4096 Nov 18 14:49 bin
drwxr-xr-x. 1 root root    22 Dec  1 07:41 conf
drwxr-xr-x. 2 root root  4096 Nov 18 14:49 lib
drwxrwxrwx. 1 root root    80 Dec  1 07:41 logs
drwxr-xr-x. 2 root root   159 Nov 18 14:49 native-jni-lib
drwxrwxrwx. 2 root root    30 Nov 18 14:49 temp
drwxr-xr-x. 2 root root     6 Nov 18 14:49 webapps #webapps是空目录
drwxr-xr-x. 7 root root    81 Nov  9 22:12 webapps.dist
drwxrwxrwx. 2 root root     6 Nov  9 22:12 work
root@93de8d28eb0d:/usr/local/tomcat# rm -rf webapps #删除webapps
root@93de8d28eb0d:/usr/local/tomcat# mv webapps.dist webapps #重命名webapps.dist
root@5410e26ca6fb:/# exit
exit

1.2.7.查看容器日志

语法:

docker logs CONTAINER NAME

案例:

[root@localhost ~]# docker logs tomcat_2

  • 18
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值