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

相关推荐
CV_J2 小时前
安装kibana
java·elasticsearch·spring cloud·docker·容器
kaoa0003 小时前
Linux入门攻坚——62、memcached使用入门
linux·运维·memcached
Wzx1980123 小时前
doker深学习
学习·docker
model20054 小时前
alibaba linux3 系统盘清理
linux·运维·服务器
WG_174 小时前
Linux:动态库加载总结_进程间通信+进程池 + 进程IPC(27/28/29/30/31/32)
linux·运维·服务器
好奇心害死薛猫4 小时前
docker_tailscale
docker·容器
一只懒鱼a4 小时前
docker部署nacos (版本2.3.2)
运维·docker
信创天地7 小时前
国产堡垒机部署实战:以奇安信、天融信为例构建运维安全三重防线
运维·安全
呉師傅8 小时前
东芝3525AC彩色复印机CC219测试页打印方法【实际操作】
运维·网络·windows·计算机外设·电脑
宴之敖者、9 小时前
Linux——权限
linux·运维·服务器