docker怎么获取hostname?


本文摘自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》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...