本文摘自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:
阅读剩余部分
相关阅读 >>
如何在linux环境下安装Docker
Docker怎么部署elk?
Docker如何实现打包
Docker容器有几种状态
Docker服务无法正常启动怎么办
怎样进入到Docker容器里面
Docker 有性能损失吗?
Docker可以隔离什么
Docker 核心是什么?
如何解决Docker安装时yum命令无效
更多相关阅读请进入《Docker》频道 >>
转载请注明出处:木庄网络博客 » docker怎么获取hostname?