Docker设置获取环境变量的方法实现
在Dockerfile中设置环境变量
在构建Docker镜像时,可以在Dockerfile中使用ENV指令来设置环境变量
ENV MY_ENV_VAR="ABC123"
ENV指令用于设置环境变量,语法为
ENV <key> <value>
ENV <key>=<value>
使用docker run命令设置环境变量
使用docker run命令在运行容器时设置环境变量。
docker run -e MY_ENV_VAR="ABC123" image_name
-e、--env选项用于设置环境变量,语法为
-e <key>=<value>
docker run --env-file path/to/env-file image_name
--env-file选项用于设置环境变量文件,格式如下:
DB_HOST=localhost DB_PORT=3306 DB_USER=root DB_PASSWORD=password
进入容器内部添加环境变量
docker exec -it 容器ID /bin/bash
可以在以下文件中添加变量:
~/.bashrc
~/.profile
~/.bash_profile
/etc/profile
/etc/environment
/etc/bash.bashrc
在文件末尾追加:
export MY_ENV_VAR=ABC123
添加完后执行下面命令生效
source 修改的文件
使用echo查看
echo $MY_ENV_VAR
在Docker Compose文件中设置环境变量
可以在docker-compose.yml中设置环境变量
version: '3.3' services: mycontainer: image: my-image container_name: my-container restart: always environment: - MY_ENV_VAR=ABC123
查看环境变量
使用docker inspect命令查看
docker inspect 容器ID
"Env": [
"MY_ENV_VAR=ABC123",
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"NGINX_VERSION=1.25.3",
"PKG_RELEASE=1",
"NJS_VERSION=0.8.2"
],
使用docker exec命令查看
docker exec 容器ID env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=decb784b8420
MY_ENV_VAR=ABC123
NGINX_VERSION=1.25.3
PKG_RELEASE=1
NJS_VERSION=0.8.2
HOME=/root
在容器内使用环境变量
设置完环境变量后,可以在容器内部使用它们:
PYTHON:
import os env_var = os.environ.get('MY_ENV_VAR')
JavaScript:
const envVar = process.env.MY_ENV_VAR
VUE2:
const envVar = process.env["MY_ENV_VAR"]
VUE3:
const envVar = import.meta.env["MY_ENV_VAR"]
Java:
String envVar = System.getenv("MY_ENV_VAR")
到此这篇关于Docker设置获取环境变量的方法实现的文章就介绍到这了,更多相关Docker设置获取环境变量内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
超详细Docker Desktop下安装rocketmq的教程
这篇文章主要介绍了Docker Desktop下安装rocketmq,本文内容通过图文操作命令给大家讲解的非常详细,需要的朋友可以参考下2021-10-10gitlab实践教程使用git config进行相关的配置操作
今天小编就为大家分享一篇关于gitlab实践教程使用git config进行相关的配置操作,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧2018-12-12docker清理大杀器/docker的overlay文件占用磁盘太大的解决
这篇文章主要介绍了docker清理大杀器/docker的overlay文件占用磁盘太大的解决操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-11-11通过Docker安装启动DB2在Spring Boot整合DB2的方法
DB2是IBM的一款优秀的关系型数据库,这篇文章主要介绍了通过Docker启动DB2,并在Spring Boot整合DB2,需要的朋友可以参考下2023-01-01
最新评论