【云原生】一文秒会Docker容器企业化管理

简介: 【云原生】一文秒会Docker容器企业化管理


1.创建容器

1.前台运行创建

注意:下面是创建容器并进入容器,当exit退出容器后,容器就不在运行,需要使用-d选项,后台运行

1. [root@localhost ~]# docker run -i -t centos:7 /bin/bash
2. [root@4af91bbbc860 /]# ps -ef
3. UID         PID   PPID  C STIME TTY          TIME CMD
4. root          1      0  0 03:19 pts/0    00:00:00 /bin/bash
5. root         15      1  0 03:19 pts/0    00:00:00 ps -ef
6. [root@4af91bbbc860 /]# exit
7. exit
8. [root@localhost ~]# docker ps -a
9. CONTAINER ID   IMAGE      COMMAND       CREATED         STATUS                     PORTS     NAMES
10. 4af91bbbc860   centos:7   "/bin/bash"   7 minutes ago   Exited (0) 8 seconds ago             naughty_meitner
11. 
12. 选项:
13. -name:指定容器名称,默认是随机名字
14. -i:创建一个交互式容器
15. -t:为容器分配一个伪终端,绑定到容器的标准输入上
16. -d:后台运行容器
2.后台运行创建
1. [root@localhost ~]# docker run -itd --name centos7-1 centos:7 /bin/bash
2. 08b6e56e54f2d645601cd71020a922c7b5f916725401b7408e358a782a965284
3. [root@localhost ~]# docker ps -a
4. CONTAINER ID   IMAGE      COMMAND       CREATED         STATUS                          PORTS     NAMES
5. 08b6e56e54f2   centos:7   "/bin/bash"   2 seconds ago   Up 2 seconds                              centos7-1
6. 4af91bbbc860   centos:7   "/bin/bash"   8 minutes ago   Exited (0) About a minute ago       naughty_meitner
7. 
8. 选项:
9. -name:指定容器名称,默认是随机名字
10. -i:创建一个交互式容器
11. -t:为容器分配一个伪终端,绑定到容器的标准输入上
12. -d:后台运行容器

2.查看容器

1. [root@localhost ~]# docker ps --help
2. 
3. Usage:  docker ps [OPTIONS]
4. 
5. List containers
6. 
7. Aliases:
8.   docker container ls, docker container list, docker container ps, docker ps
9. 
10. Options:
11.   -a, --all             Show all containers (default shows just running)    #查看所有容器 默认之查看在运行的容器
12.   -f, --filter filter   Filter output based on conditions provided
13.       --format string   Format output using a custom template:
14.                        'table':            Print output in table format
15.                         with column headers (default)
16.                        'table TEMPLATE':   Print output in table format
17.                         using the given Go template
18.                        'json':             Print in JSON format
19.                        'TEMPLATE':         Print output using the given Go
20.                         template.
21.                         Refer to https://docs.docker.com/go/formatting/ for
22.                         more information about formatting output with templates
23.   -n, --last int        Show n last created containers (includes all            #查看多少行容器
24.                         states) (default -1)
25.   -l, --latest          Show the latest created container (includes all states)     #查看最近创建的容器
26.       --no-trunc        Don't truncate output       #显示完整ID号
27.   -q, --quiet           Only display container IDs      #只显示ID号
28.   -s, --size            Display total file sizes    #显示容器大小
1.查看所有的容器
1. [root@localhost ~]# docker ps -a
2. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                      PORTS     NAMES
3. 08b6e56e54f2   centos:7   "/bin/bash"   27 minutes ago   Up 27 minutes                         centos7-1
4. 4af91bbbc860   centos:7   "/bin/bash"   35 minutes ago   Exited (0) 28 minutes ago             naughty_meitner
2.查看容器的ID

注:可以用于删除容器时,过滤

1. [root@localhost ~]# docker ps -q
2. 08b6e56e54f2

3.管理容器

1.开启容器
1. [root@localhost ~]# docker start 4af91bbbc860
2. 4af91bbbc860
3. [root@localhost ~]# docker ps -a
4. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS          PORTS     NAMES
5. 08b6e56e54f2   centos:7   "/bin/bash"   30 minutes ago   Up 30 minutes             centos7-1
6. 4af91bbbc860   centos:7   "/bin/bash"   38 minutes ago   Up 1 second               naughty_meitner
2.关闭容器
1. [root@localhost ~]# docker stop 08b6e56e54f2
2. 08b6e56e54f2
3. [root@localhost ~]# docker ps -a
4. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                        PORTS     NAMES
5. 08b6e56e54f2   centos:7   "/bin/bash"   30 minutes ago   Exited (137) 10 seconds ago             centos7-1
6. 4af91bbbc860   centos:7   "/bin/bash"   39 minutes ago   Up 53 seconds                           naughty_meitner
3.强制关闭容器
1. [root@localhost ~]# docker kill 4af91bbbc860
2. 4af91bbbc860
3. [root@localhost ~]# docker ps -a
4. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                        PORTS     NAMES
5. 08b6e56e54f2   centos:7   "/bin/bash"   31 minutes ago   Exited (137) 51 seconds ago             centos7-1
6. 4af91bbbc860   centos:7   "/bin/bash"   39 minutes ago   Exited (137) 1 second ago               naughty_meitner
4.重启容器
1. [root@localhost ~]# docker restart 4af91bbbc860
2. 4af91bbbc860
3. [root@localhost ~]# docker ps -a
4. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                            PORTS     NAMES
5. 08b6e56e54f2   centos:7   "/bin/bash"   32 minutes ago   Exited (137) About a minute ago             centos7-1
6. 4af91bbbc860   centos:7   "/bin/bash"   40 minutes ago   Up 7 seconds                                naughty_meitner

4.查看容器信息

1.查看所有信息
[root@localhost ~]# docker inspect 4af91bbbc860
2.查看容器IP
1. [root@localhost ~]# docker inspect -f '{{.NetworkSettings.IPAddress}}' 4af91bbbc860
2. 172.17.0.2
3.查看PID
1. [root@localhost ~]# docker inspect -f '{{.State.Pid}}' 4af91bbbc860
2. 72633

5.进入容器

注意:进入当前的伪终端,如果exit退出之后,当前的容器也会随之关闭,因为当前只存在一个终端。

1.进入当前的伪终端中
1. [root@localhost ~]# docker attach 4af91bbbc860
2. [root@4af91bbbc860 /]# exit
3. exit
4. [root@localhost ~]# docker ps -a
5. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                             PORTS     NAMES
6. 08b6e56e54f2   centos:7   "/bin/bash"   42 minutes ago   Exited (137) 11 minutes ag     o             centos7-1
7. 4af91bbbc860   centos:7   "/bin/bash"   50 minutes ago   Exited (0) 5 seconds ago                     naughty_meitner
2.创建一个新的伪终端并进入
1. [root@localhost ~]# docker exec -it 4af91bbbc860 /bin/bash
2. [root@4af91bbbc860 /]# exit
3. exit
4. [root@localhost ~]# docker ps -a
5. CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                        PORTS     NAMES
6. 08b6e56e54f2   centos:7   "/bin/bash"   43 minutes ago   Exited (137) 13 minutes ago             centos7-1
7. 4af91bbbc860   centos:7   "/bin/bash"   51 minutes ago   Up 28 seconds                           naughty_meitner

6.导出\导入容器

1.导出容器

将当前容器导出到本地

1. [root@localhost ~]# docker export 4af91bbbc860 > centos7.tar
2. [root@localhost ~]# ls
3. anaconda-ks.cfg  centos7.tar  original-ks.cfg
2.导入容器

将当前容器导入为竟镜像,然后再基于这个镜像创建容器

1. [root@localhost ~]# cat centos7.tar | docker import - centos7:test
2. sha256:d0373e6a70dc1413fa992d11c40b9260fe742db22196429835d33b9cc3eb2135
3. [root@localhost ~]# docker images
4. REPOSITORY                                          TAG       IMAGE ID       CREATED          SIZE
5. centos7                                             test      d0373e6a70dc   11 seconds ago   204MB

7.删除容器

1.删除单个容器
1. [root@localhost ~]# docker rm -f 4af91bbbc860
2. 
3. 选项:
4. -f:强制删除
2.删除多个容器
[root@localhost ~]# docker rm -f 4af91bbbc860  08b6e56e54f2
3.删除全部容器
[root@localhost ~]# docker rm -f  $(docker ps -aq)


目录
相关文章
|
23天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
180 77
|
5天前
|
搜索推荐 安全 数据安全/隐私保护
7 个最能提高生产力的 Docker 容器
7 个最能提高生产力的 Docker 容器
74 35
|
4天前
|
Ubuntu Linux 开发工具
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
Docker 是一个开源的容器化平台,允许开发者将应用程序及其依赖项打包成标准化单元(容器),确保在任何支持 Docker 的操作系统上一致运行。容器共享主机内核,提供轻量级、高效的执行环境。本文介绍如何在 Ubuntu 上安装 Docker,并通过简单步骤验证安装成功。后续文章将探讨使用 Docker 部署开源项目。优雅草央千澈 源、安装 Docker 包、验证安装 - 适用场景:开发、测试、生产环境 通过以上步骤,您可以在 Ubuntu 系统上成功安装并运行 Docker,为后续的应用部署打下基础。
docker 是什么?docker初认识之如何部署docker-优雅草后续将会把产品发布部署至docker容器中-因此会出相关系列文章-优雅草央千澈
|
10天前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
70 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
2天前
|
存储 人工智能 调度
容器服务:智算时代云原生操作系统及月之暗面Kimi、深势科技实践分享
容器技术已经发展成为云计算操作系统的关键组成部分,向下高效调度多样化异构算力,向上提供统一编程接口,支持多样化工作负载。阿里云容器服务在2024年巴黎奥运会中提供了稳定高效的云上支持,实现了子弹时间特效等创新应用。此外,容器技术还带来了弹性、普惠的计算能力升级,如每分钟创建1万Pod和秒级CPU资源热变配,以及针对大数据与AI应用的弹性临时盘和跨可用区云盘等高性能存储解决方案。智能运维方面,推出了即时弹性节点池、智能应用弹性策略和可信赖集群托管运维等功能,进一步简化了集群管理和优化了资源利用率。
|
7天前
|
存储 NoSQL Cloud Native
MongoDB云原生化:为企业开发注入高效动力
MongoDB云原生化为企业开发注入高效动力,分为三部分:1. 介绍阿里云和MongoDB的服务;2. 阿里云MongoDB解决自建模型痛点的功能,包括隔离性、海量数据处理、弹性能力及运维操作优化;3. 客户案例展示。通过云原生架构,MongoDB实现了灵活的扩展、高效的备份恢复和快速的回档能力,显著提升了企业的业务迭代速度和数据管理效率。典型客户如吉比特、莉莉丝、掌阅等受益于这些功能,实现了更稳定和高效的数据库服务。
|
10天前
|
Unix Linux Docker
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
37 4
|
22天前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
22天前
|
人工智能 Kubernetes Cloud Native
阿里云容器服务,智算时代云原生操作系统
2024云栖大会,阿里巴巴研究员易立分享了阿里云容器服务的最新进展。容器技术已成为云原生操作系统的基石,支持多样化的应用场景,如自动驾驶、AI训练等。阿里云容器服务覆盖公共云、边缘云、IDC,提供统一的基础设施,助力客户实现数字化转型和技术创新。今年,阿里云在弹性计算、网络优化、存储解决方案等方面进行了多项重要升级,进一步提升了性能和可靠性。
|
22天前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
阿里云容器服务ACK提供强大的产品能力,支持弹性、调度、可观测、成本治理和安全合规。针对拥有IDC或三方资源的企业,ACK One分布式云容器平台能够有效解决资源管理、多云多集群管理及边缘计算等挑战,实现云上云下统一管理,提升业务效率与稳定性。