首先让我们来了解一下docker在企业中有什么作用?
Docker在企业中的作用主要体现在以下几个方面:
### 1. **应用隔离**
- **独立环境**:每个应用运行在独立的容器中,避免依赖冲突。
- **安全性**:容器间的隔离增强了安全性,防止一个应用的漏洞影响其他应用。
### 2. **简化部署**
- **一致性**:开发、测试和生产环境一致,减少“在我机器上能运行”的问题。
- **快速部署**:容器启动迅速,提升部署效率。
### 3. **资源优化**
- **高效利用**:容器共享操作系统内核,资源占用少,提升服务器利用率。
- **弹性伸缩**:根据需求快速扩展或缩减容器数量,灵活应对流量变化。
### 4. **持续集成与持续交付(CI/CD)**
- **自动化**:与CI/CD工具集成,实现自动化构建、测试和部署。
- **快速迭代**:加速开发周期,支持快速发布新功能和修复。
### 5. **跨平台兼容**
- **多环境支持**:可在物理机、虚拟机、云平台等多种环境中运行,提升应用的可移植性。
- **混合云**:支持跨云平台部署,便于构建混合云架构。
### 6. **微服务架构**
- **模块化**:支持将应用拆分为多个微服务,每个服务独立开发、部署和扩展。
- **独立更新**:单个服务更新不影响整体系统,提升灵活性和可维护性。
### 7. **降低成本**
- **硬件节省**:高效的资源利用减少硬件需求。
- **运维简化**:标准化部署和管理降低运维复杂性。
### 8. **生态系统**
- **丰富工具**:Docker Hub等平台提供大量镜像和工具,加速开发和部署。
- **社区支持**:活跃的社区和广泛的企业支持,提供丰富的资源和解决方案。
### 总结
Docker通过容器化技术,提升了应用开发、部署和管理的效率,帮助企业实现更灵活、高效的IT基础设施管理。
常见的docker命令如下:
docker pull 拉取镜像命令
docker search 搜索镜像命令
docker images 查询虚拟机存在的镜像
docker rmi -f 删除镜像
上图是两个重要命令,企业中会经常用到,一个是将离线的镜像进行一个打包,另外一个是将你打包好的镜像进行一个解压缩,因为现在docker的官方镜像地址经常给封锁,所以就需要这两条命令在存在镜像打包起来,然后进行一个离线的解压
有需要镜像的可以私聊我
[root@cjr ~]# docker load -i centos8.tar
74ddd0ec08fa: Loading layer 238.6MB/238.6MB
Loaded image: centos:latest
You have new mail in /var/spool/mail/root
[root@cjr ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 5d0da3dc9764 3 years ago 231MB
-
REPOSITORY: 镜像的名称。这里显示的是
centos
,表示这是一个 CentOS 操作系统的镜像。 -
TAG: 镜像的标签,通常用于区分不同版本或变体。
latest
表示这是该镜像的最新版本。 -
IMAGE ID: 镜像的唯一标识符。
5d0da3dc9764
是这个 CentOS 镜像的唯一 ID。 -
CREATED: 镜像的创建时间。
3 years ago
表示这个镜像是 3 年前创建的。 -
SIZE: 镜像的大小。
231MB
表示这个镜像占用了 231MB 的磁盘空间
[root@cjr ~]# docker run -it --name test centos:latest /bin/bash
[root@816146e460a9 /]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2 816146e460a9
-
这条命令会基于
centos:latest
镜像创建一个新的容器,并命名为test
。 -
容器启动后,会直接进入容器的 Bash Shell(因为指定了
/bin/bash
)。 -
你可以在容器的终端中执行命令,就像操作一台 CentOS 系统的服务器一样。
-
docker run
:-
这是 Docker 的命令,用于创建并启动一个新的容器。
-
-
-it
:-
这是两个选项的组合:
-
-i
:保持标准输入(STDIN)打开,允许你与容器进行交互。 -
-t
:分配一个伪终端(pseudo-TTY),使容器的终端行为类似于本地终端。
-
-
结合起来,
-it
让你可以以交互模式进入容器的终端。
-
-
--name test
:-
为容器指定一个名称。这里将容器命名为
test
。 -
如果没有指定名称,Docker 会随机生成一个名称。
-
-
centos:latest
:-
指定要使用的镜像及其标签。
-
这里使用的是
centos
镜像的latest
标签(即最新版本)。
-
-
/bin/bash
:-
这是容器启动后要执行的命令。
-
/bin/bash
是 Bash Shell 的路径,表示启动容器后进入 Bash Shell。 -
-
-
查看历史的容器,由于镜像是靠交互式启动的,所以如果exit退出的话那么正在运行的容器也会停止运行