Docker Review - docker 容器 常用命令(上)

简介: Docker Review - docker 容器 常用命令(上)

31ba6d1820c748a98dcc2d94bfddcbbc.png


容器相关的命令


先有个认知: 有镜像才能创建容器


下载一个centos的基础镜像

我们来看个例子 : 下载一个centos的基础镜像

[root@VM-0-7-centos ~]# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
a1d0c7532777: Pull complete
Digest: sha256:a27fd8080b517143cbbbab9dfb7c8571c40d67d534bbdee55bd6c473f432b177
Status: Downloaded newer image for centos:latest
docker.io/library/centos:latest
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 weeks ago   231MB
[root@VM-0-7-centos ~]#



6e6860605ccf49be9caeb1b4898387ad.gif


新建容器并启动 docker run

https://docs.docker.com/engine/reference/commandline/run/


3a3813068b9d4cd895ec61de406b2511.png

操作说明

b4fbc0fba5ba4861955801ec780c4c03.png


Option 太多了,看官文吧 ,这里挑几个常用的

$ docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
# 参数说明
--name="Name"    容器名字 ,任意指定,用来区分容器
-d               后台方式运行
-it              使用交互方式运行,进入容器查看内容
-p               指定容器端口  -p 8080:8080
    -p ip:主机端口:容器端口
    -p 主机端口:容器端口  (常用)
    -p 容器端口
    容器端口
-P               随机指定端口

启动并进入容器

[root@VM-0-7-centos ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
centos       latest    5d0da3dc9764   2 weeks ago   231MB
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
#  启动并进入容器  
[root@VM-0-7-centos ~]# docker run -it centos /bin/bash
[root@23e62436c0c5 /]# ls
bin  dev  etc  home  lib  lib64  lost+found  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@23e62436c0c5 /]# pwd
/
# 从容器中退回主机
[root@23e62436c0c5 /]# exit
exit
[root@VM-0-7-centos ~]# pwd
/root
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#



131f09df25604b159e712b4e4324b394.png

查看当前有哪些容器正在运行 docker ps

https://docs.docker.com/engine/reference/commandline/ps/

253bed3ebf004e8d9a96a70eb536ffc5.png

# docker ps 显示正常运行的容器
-a   # 显示当前正在运行的容器 + 历史运行过的容器
-n=? # 显示最近创建的容器
-q   # 只显示容器的编号
[root@VM-0-7-centos ~]# 显示正常运行的容器
[root@VM-0-7-centos ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#  显示当前正在运行的容器 + 历史运行过的容器
[root@VM-0-7-centos ~]# docker ps -a
CONTAINER ID   IMAGE          COMMAND       CREATED         STATUS                     PORTS     NAMES
23e62436c0c5   centos         "/bin/bash"   3 minutes ago   Exited (0) 3 minutes ago             admiring_austin
95a5e684ea82   feb5d9fea6a5   "/hello"      44 hours ago    Exited (0) 44 hours ago              dazzling_davinci
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#  查看帮助  
[root@VM-0-7-centos ~]# docker ps --help
Usage:  docker ps [OPTIONS]
List containers
Options:
  -a, --all             Show all containers (default shows just running)
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print containers using a Go template
  -n, --last int        Show n last created containers (includes all states) (default -1)
  -l, --latest          Show the latest created container (includes all states)
      --no-trunc        Don't truncate output
  -q, --quiet           Only display container IDs
  -s, --size            Display total file sizes
[root@VM-0-7-centos ~]# docker ps -n=1
CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS                     PORTS     NAMES
23e62436c0c5   centos    "/bin/bash"   4 minutes ago   Exited (0) 4 minutes ago             admiring_austin
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]#
[root@VM-0-7-centos ~]# docker ps -aq
23e62436c0c5
95a5e684ea82
[root@VM-0-7-centos ~]#


启动容器

docker start container_name/container_id      # 启动容器


https://docs.docker.com/engine/reference/commandline/start/


6fa1fb495eeb4661b9c53643197362ea.png


停止容器

https://docs.docker.com/engine/reference/commandline/stop/

docker stop container_name/container_id       # 停止当前正在运行的容器


1ebd4fea477944a5b604e5d70ae4b948.png

重启容器


docker restart container_name/container_id   # 重启容器


https://docs.docker.com/engine/reference/commandline/restart/


46cf62af1cb0419c827bacfd98e016b2.png

强制停止

docker kill container_name/container_id         # 强制停止当前容器


https://docs.docker.com/engine/reference/commandline/kill/


59b61ba06b164fec880323d598ae44a4.png


相关文章
|
2月前
|
存储 Java Linux
【Docker】(2)还在浏览网页寻找Docker命令?本文全面列举与使用Docker里的各个命令!想要什么命令直接从本文拿!
docker有着比VM更少的抽象层 由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源 因此在CPU、内存利用率上Docker将会在效率上有明显优势 docker利用的时宿主机的内核,而不需要加载操作系统OS内核 当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统内核 进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程时分钟级别的。 而Docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个Docker容器只需
400 124
|
2月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
527 5
|
2月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
264 6
|
3月前
|
缓存 前端开发 Docker
Docker Layer Caching:加速你的容器构建
Docker Layer Caching:加速你的容器构建
|
4月前
|
运维 持续交付 开发者
Docker:重塑现代应用开发的容器革命
Docker:重塑现代应用开发的容器革命