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

相关推荐
袁袁袁袁满4 小时前
Linux云服务器如何判断系统是否发生过异常断电?
linux·运维·服务器
一只鹿鹿鹿4 小时前
智慧水利一体化建设方案
大数据·运维·开发语言·数据库·物联网
学不完的4 小时前
haproxy
linux·运维·https·负载均衡·haproxy
cyber_两只龙宝5 小时前
Nginx--企业高性能web服务器高级配置详解
linux·运维·nginx·云原生
如若1237 小时前
AutoDL云服务器 NVIDIA 570驱动 EGL渲染修复全记录
运维·服务器·python
i建模7 小时前
Omarchy设置防火墙
linux·运维
晚秋大魔王7 小时前
泰拉瑞亚手机版服务器部署
运维·服务器·泰拉瑞亚
敲代码的哈吉蜂7 小时前
高可用集群Keepalived
运维·服务器·网络·数据库
青衫码上行8 小时前
【项目部署】Spring Boot项目部署的四种方式
java·linux·服务器·spring boot·后端·docker·腾讯云
盟接之桥8 小时前
盟接之桥说制造:从客供的外在共生到内在的身心合一
运维·服务器·网络·人工智能·制造