docker环境和非docker环境

1.docker shell VS docker vm shell
docker运行环境(docker shell)和非docker环境(虚拟机环境,docker vm shell )是两个不同的环境。
docker 环境是一个负责与docker服务器端进程通信的命令行程序,基于linux内核。是一个操作系统,所有的docker vm都在docker环境下运行,运行命令docker-machine create创建。
dockers启动时,默认创建或启动一个default虚拟机,在当前环境下执行得命令,默认都是在default虚拟及上。
2.判断docker环境和非docker环境
2.1 判断是否存在.dockerenv文件
docker环境下存在.dockerenv文件

root@localhost:/# ls -alh /.dockerenv 
-rwxr-xr-x 1 root root 0 Sep  6 07:09 /.dockerenv

非docker环境不存在
在这里插入图片描述2.2 查询系统进程cgroup信息
docker环境下/etc/pro/1/group

root@root:/# cat /proc/1/cgroup 
10:devices:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
9:perf_event:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
8:net_cls,net_prio:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
7:cpu,cpuacct:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
6:freezer:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
5:memory:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
4:cpuset:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
3:blkio:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
2:pids:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730
1:name=systemd:/docker/4cb54de415d470461a636d52a9a4f731eddbbcfdf80b4d0b46466ec1cf27f730

非docker环境下/etc/pro/1/group
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Docker环境变量是在Docker容器中设置的变量。这些变量可以在容器内部使用,也可以在Dockerfile或docker-compose.yml文件中设置。以下是一些关于Docker环境变量的常见问题和答案: 1. 如何在Dockerfile中设置环境变量? 在Dockerfile中,您可以使用ENV指令设置环境变量。例如: ``` ENV MY_VAR=my_value ``` 2. 如何在docker-compose.yml文件中设置环境变量? 在docker-compose.yml文件中,您可以使用environment关键字设置环境变量。例如: ``` services: my_service: image: my_image environment: MY_VAR: my_value ``` 3. 如何在容器内部使用环境变量? 在容器内部,您可以使用$符号和变量名来引用环境变量。例如: ``` echo $MY_VAR ``` 4. 如何在运行容器时设置环境变量? 使用-e选项在运行容器时设置环境变量。例如: ``` docker run -e MY_VAR=my_value my_image ``` 5. 如何查看容器中的环境变量? 使用docker exec命令进入容器,并使用env命令查看环境变量。例如: ``` docker exec -it my_container bash env ``` ### 回答2: Docker环境变量是在容器内部运行时可以使用的变量。它们是在创建和运行容器时设置的,用于配置容器的各种参数和选项。 首先,环境变量可以用来指定容器应该使用的镜像本。通过设置`IMAGE_VERSION`环境变量为特定的本号,可以确保容器使用正确的镜像本。 其次,环境变量可以用于配置容器的运行参数。例如,可以设置`PORT`环境变量为容器内部应用程序监听的端口号,使得容器可以通过该端口与外部通信。 此外,环境变量还可以用于传递应用程序所需的其他配置信息。例如,可以设置`DB_USERNAME`和`DB_PASSWORD`环境变量,以指定容器连接数据库时所需的用户名和密码。 使用环境变量可以提高容器的可移植性和灵活性。通过修改环境变量的值,可以在容器之间轻松切换所使用的配置,而不需要对应用程序的源代码进行修改。此外,环境变量也使得容器的配置变得可配置化,便于在不同的环境中部署相同的容器。 要在Docker容器中使用环境变量,可以在Dockerfile中使用`ENV`关键字来定义环境变量,或者在运行容器时使用`-e`选项来设置环境变量的值。 总而言之,Docker环境变量是一种常实用的配置机制,可以灵活地配置容器的参数和选项,提高容器的可移植性和可配置性。 ### 回答3: Docker环境变量是一种在Docker容器内定义和使用的变量。它们可以用来配置容器的特定行为,也可以在容器之间共享信息。下面是关于Docker环境变量的一些重要信息。 首先,Docker环境变量可以在构建镜像时定义,也可以在启动容器时传递。当我们在构建镜像时定义环境变量时,它们将被固定在镜像中,以供容器在运行时使用。这样可以确保在每个容器实例中环境变量的一致性。 其次,Docker环境变量可以用于配置容器的一些重要参数。例如,我们可以使用环境变量指定数据库的连接字符串、设置服务器的IP地址和端口号,或指定应用程序的日志级别等。这样,我们可以通过修改环境变量的值,而无需重新构建和部署镜像,来调整容器的行为。 此外,Docker环境变量可以在不同容器之间传递信息。例如,我们可以在一个容器中定义一个环境变量,并将其传递给另一个容器,以便共享某些重要数据。这种方式可以帮助我们实现容器间的数据交流和协同工作。 最后,Docker环境变量也具有一定程度的安全性。我们可以通过将敏感信息(如密码和API密钥)存储为环境变量,而不是直接硬编码在容器中,来提高应用程序的安全性。这样,我们可以更好地保护这些敏感信息,避免它们意外泄漏。 总之,Docker环境变量是在Docker容器中定义和使用的变量,用于配置容器行为、共享信息和提高应用程序的安全性。它们提供了一种灵活和方便的方式来管理容器的特定需求和配置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值