docker如何配置环境变量

来自:网络
时间:2024-03-31
阅读:

docker配置环境变量

1、在 Dockerfile 中使用 ENV 指令设置环境变量

格式有两种:

ENV key value
ENV key1=value1 key2=value2
1、key value
	ENV PYTHON_VERSION 3.5.3
2、key=value
	ENV name1=ping name2=on_ip
3、换行
	ENV VERSION=1.0 DEBUG=on \

	    NAME="Happy Feet"
4、在 Dockerfile 中使用
	$NODE_VERSION
    $PYTHON_VERSION

2、在 docker run 命令中设置环境变量

docker run --env -e

示例

docker run -e VAR1=value1 --env VAR2=value2 ubuntu
docker run --env VAR1=value1 --env VAR2=value2 ubuntu

You can also use variables that you’ve exported to your local environment:

export VAR1=value1
export VAR2=value2
$ docker run --env VAR1 --env VAR2 ubuntu env | grep VAR
VAR1=value1
VAR2=value2

docker run --env-file

使用文件作为环境变量,.env 文件如下:

# This is a comment
VAR1=value1
VAR2=value2
USER  # which takes the value from the local environment

运行示例:

docker run --env-file .env ubuntu

3、查看环境变量

docker inspect <CONTAINER-NAME> OR <CONTAINER-ID>

docker注入环境变量且设置多个环境变量

方式一

运行docker命令修改

在运行docker时,直接使用-e或–env,输入需要改变的变量

例如:

springboot配置文件如下,可注入环境变量启动端口SERVER_PORT,以及启动配置文件NODE_ENV:dev

server:
  port: ${SERVER_PORT:8400}
spring:
  application:
    name: @project.artifactId@
  profiles:
    active:
      - ${NODE_ENV:dev}
  redis:
    database: 2

启动命令注入如下:

docker run -it

         -e SERVER_PORT=9080

        -d 容器id

替换多个如下:

docker run -it

         -e SERVER_PORT=9080

         -e NODE_ENV=prod

        -d 容器id

方式二

在你的Dockerfile中直接写入环境变量
# default env
ENV NODE_ENV dev
ENV SERVER_PORT 8400

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

返回顶部
顶部