V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
programV2
V2EX  ›  程序员

docker 环境变量.env 文件中多个端口如何配置

  •  
  •   programV2 · 2020-01-17 14:42:10 +08:00 · 1883 次点击
    这是一个创建于 1770 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如我打算开 80 和 443,该如何设置? 用什么符号分隔开?还是再重新加一行, 谢谢大家

    .env

    PROJECT_NAME=drupal8

    NGINX_TAG=alpine

    NGINX_PORT=80:80

    NGINX_PORT=443:443

    6 条回复    2020-01-17 17:48:26 +08:00
    biello
        1
    biello  
       2020-01-17 15:04:56 +08:00
    老哥,这就是个环境变量而已,想用什么用什么,反正拿出来都是个字符串
    Vegetable
        2
    Vegetable  
       2020-01-17 15:07:55 +08:00
    写配置文件别用环境变量呗
    programV2
        3
    programV2  
    OP
       2020-01-17 17:06:29 +08:00
    @biello 谢谢指点, 那可以同时有两个相同变量名称吗? 比如我上例中写的
    NGINX_PORT=80:80

    NGINX_PORT=443:443

    这样可以吗?
    iamwho
        4
    iamwho  
       2020-01-17 17:21:09 +08:00
    @programV2 #3

    env file 定义的变量,同一变量只有一个值。
    programV2
        5
    programV2  
    OP
       2020-01-17 17:32:49 +08:00
    @iamwho 就是说要用不同变量名称? 那我改成 NGINX_PORTA 和 NGINX_PORTB 可以吗?
    NGINX_PORTA=80:80

    NGINX_PORTB=443:443
    iamwho
        6
    iamwho  
       2020-01-17 17:48:26 +08:00
    @programV2 #5

    在 env file 定义的变量和是否开启多少个端口是没有关系的,定义的变量是给 compose 或者 nginx 配置文件使用的。

    开启端口,
    docker run -p 80:80 -p 443:443
    compose file:
    ...
    ports:
    - "80:80"
    - "443:443"
    ...

    参考:
    nginx - docker hub:
    https://hub.docker.com/_/nginx
    env file:
    https://docs.docker.com/compose/env-file/
    env in compose:
    https://docs.docker.com/compose/environment-variables/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1880 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:20 · PVG 00:20 · LAX 08:20 · JFK 11:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.