在 docker 内运行命令的一个大坑

当你希望使用 docker 容器内部的 echo 打印 docker 容器内部的环境变量时,不能直接使用下面的命令:

bash 复制代码
docker run IMAGE_NAME bash -c "echo $ENVNAME"

这是因为,host 中的 shell 会把 "$ENVNAME" 替换成 host 上的 ENVNAME 的值

正确方法,加个反斜杠,如下:

bash 复制代码
docker run IMAGE_NAME bash -c "echo \$ENVNAME"

转义 $ 符号,让它被传进 docker 容器内,这样就可以打印 docker 内部的环境变量了

相关推荐
小庄梦蝶22 分钟前
宝塔使用nodejs管理器下载nodejs版本失败解决方式之一
linux·运维·前端
何中应37 分钟前
解决Jenkins界面操作非常慢的问题
java·运维·jenkins
赵鑫亿38 分钟前
ClawPanel v4.4.0 发布:AI 智能助手 + 模型兼容性修复 + UI 优化
人工智能·ui·docker·容器·qq·openclaw
was17243 分钟前
轻量级多服务器监控:Beszel 的安装与实战部署
运维·服务器·状态监控
小王C语言1 小时前
【进程概念】————进程切换、环境变量
linux·运维·服务器
Codefengfeng2 小时前
压缩包的恢复
linux·运维
切糕师学AI2 小时前
Kubernetes 中的 Headless Service
云原生·容器·kubernetes
楼田莉子2 小时前
Linux网络学习:网络的基础概念
linux·运维·服务器·网络·c++·学习
猫头虎2 小时前
OpenClaw 常用操作命令完整速查手册:终端 CLI 操作指令详解|聊天斜杠指令详情
运维·git·容器·开源·github·aigc·ai编程
tzhou644522 小时前
构建3 Master + 3 Node K8s集群完整步骤
云原生·容器·kubernetes