本文摘自PHP中文网,作者coldplay.xixi,侵删。
docker怎么获取hostname?
docker获取hostname的方法:
在nodejs环境中测试通过,其它语言同理,只需要使用获取环境变量的方法即可。
思路:docker容器和宿主机环境是隔离的,但是可以在启动docker容器时将宿主机的主机名以环境变量的形式传入,代码在容器中获取该值即可。
操作:
1 | docker run -d -p 3000:3000 --name myTest -e HOST_Q=$(hostname) mytest:v1 # 使用-e 参数传入环境变量,值为主机名
|
如果使用yml文件启动:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | version: '3'
services:
mysql:
image: mysql:v1
container_name: xx-mysql
restart: always
networks:
- host
environment:
- MYSQL_ROOT_PASSWORD=xxx0209
- HOST_Q=$(hostname) # 在这设置
ports:
- 3306:3306
volumes:
- /opt/data/mysql:/ var /lib/mysql:z
|
启动成功后,容器内部环境变量就多了一个HOST_Q,接下来使用程序取出即可:
nodejs:
阅读剩余部分
相关阅读 >>
如何通过命令行查看Docker服务是否已启动
Docker无法删除镜像怎么办
Docker核心概念介绍
Docker镜像怎么删除
怎么把python脚本放在Docker上运行
安装Docker后电脑无法关机怎么办
Docker容器内域名解析失败怎么解决
Docker save和Docker export有什么区别
Docker下entrypoint和cmd的区别是什么?
Docker 和 azure 的区别?
更多相关阅读请进入《Docker》频道 >>
转载请注明出处:木庄网络博客 » docker怎么获取hostname?