在 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 内部的环境变量了

相关推荐
木子.李3471 小时前
ssh连接远程服务器相关总结
运维·服务器·ssh
晚风吹人醒.3 小时前
SSH远程管理及访问控制
linux·运维·ssh·scp·xshell·访问控制·远程管理
DigitalOcean3 小时前
DigitalOcean容器注册表推出多注册表支持功能
容器
necessary6534 小时前
使用Clion查看linux环境中的PG源码
linux·运维·服务器
江湖有缘5 小时前
Jump个人仪表盘Docker化部署教程:从0到 搭建专属导航页
运维·docker·容器
Lam㊣6 小时前
Centos 7 系统docker:更换镜像源
linux·docker·centos
FL16238631296 小时前
win11+WSL+Ubuntu-xrdp+远程桌面闪退+黑屏闪退解决
linux·运维·ubuntu
挖土机_0086 小时前
Kubernetes 1.35 原地扩容(In-Place Pod Resize)完整解析:机制、差异与实战示例
docker·kubernetes
AOwhisky7 小时前
Linux逻辑卷管理:从“固定隔间”到“弹性存储池”的智慧
linux·运维·服务器
05大叔7 小时前
大事件Day02
运维·服务器