当前位置:首页 > PS视频 > 正文内容

如何在 Compose 文件中配置环境变量?

编辑2个月前 (04-28)PS视频13

# Docker Compose 环境变量配置|最全 4 种用法(直接复制可用) Compose 配置环境变量非常简单,**支持直接写、支持外部文件、支持混合使用**,我给你整理**最常用、最安全、最规范**的写法,新手直接照抄。 --- ## 一、最常用:直接写在 docker-compose.yml 里 适合简单、少量环境变量。 ```yaml version: '3.8' services:  mysql:    image: mysql:8.0    # 环境变量配置    environment:      MYSQL_ROOT_PASSWORD: 123456      MYSQL_DATABASE: mydb      TZ: Asia/Shanghai ``` ### 两种写法都可以 ```yaml # 写法1(键值对,推荐) environment:  KEY: VALUE # 写法2(数组) environment:  - KEY=VALUE ``` --- ## 二、最安全:使用外部 .env 文件(企业标准) **密码、密钥绝对不能写在 yml 里**,必须放 `.env` 文件。 ### 1)创建文件 `.env`(和 docker-compose.yml 同目录) ```env # .env 文件 MYSQL_PASSWORD=123456 MYSQL_DB=mydb REDIS_PASS=123456 TZ=Asia/Shanghai ``` ### 2)在 compose 中引用 ```yaml services:  mysql:    image: mysql:8    environment:      MYSQL_ROOT_PASSWORD: ${MYSQL_PASSWORD}      MYSQL_DATABASE: ${MYSQL_DB} ``` **自动加载**,不需要额外配置,Compose 会自动读 `.env`。 --- ## 三、指定自定义 env 文件(多环境必备) 如果你有: - `.env.dev` - `.env.prod` - `.env.test` 可以在 yml 里指定: ```yaml services:  api:    image: myapp    env_file:      - .env.dev ``` 或多个: ```yaml env_file:  - .env.common  - .env.prod ``` --- ## 四、运行时传入环境变量(临时覆盖) 启动时直接覆盖,优先级最高: ```bash MYSQL_PASS=654321 docker-compose up -d ``` --- # 环境变量优先级(重要!) 1. **运行时传入**(最高) 2. **docker-compose.yml 里写的 environment** 3. **env_file 指定的文件** 4. **.env 默认文件** 5. **镜像内部默认变量**(最低) --- # 最规范企业级模板(直接用) ## docker-compose.yml ```yaml version: '3.8' services:  mysql:    image: mysql:8.0    environment:      MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}      MYSQL_DATABASE: ${MYSQL_DATABASE}      TZ: ${TZ}    volumes:      - mysql-data:/var/lib/mysql    restart: always  redis:    image: redis:alpine    command: redis-server --requirepass ${REDIS_PASSWORD}    environment:      TZ: ${TZ} volumes:  mysql-data: ``` ## .env ```env MYSQL_ROOT_PASSWORD=123456 MYSQL_DATABASE=appdb REDIS_PASSWORD=123456 TZ=Asia/Shanghai ``` --- ## 常用环境变量速查(直接复制) ### MySQL ``` MYSQL_ROOT_PASSWORD MYSQL_DATABASE MYSQL_USER MYSQL_PASSWORD TZ=Asia/Shanghai ``` ### Redis ``` REDIS_PASSWORD ``` ### Nginx / Java / Node ``` TZ=Asia/Shanghai SPRING_PROFILES_ACTIVE=prod NODE_ENV=productio

扫描二维码推送至手机访问。

版权声明:本文由手机数据加工厂发布,如需转载请注明出处。

本文链接:https://www.cryp6.com/?id=187

“如何在 Compose 文件中配置环境变量?” 的相关文章

视频里的水印怎么去除干净?6种方法亲测有效,简单又无痕

视频里的水印怎么去除干净?6种方法亲测有效,简单又无痕

根据2026年行业报告显示,视频去水印工具市场规模已达43.8亿元,年增长率超21%,其中个人创作者占比59%,企业级客户采购量三年翻番。无论是剪辑短视频、二次创作素材,还是整理工作资料,“水印碍事”都成了高频痛点。要么遮挡关键信息,要么影响画面美感,更有甚者会被平台判定为非原创内容。今天分享6种亲...

苹果iPhone+Mac如何开启WiFi+蓝牙

下面直接给你「一步到位」的极简版,照着点就行(为了隔空投送,**Wi‑Fi 和蓝牙都要开,不需要连同一个 Wi‑Fi 也能投送**)。 --- iPhone 打开 Wi‑Fi + 蓝牙(两种方法) 方法1:控制中心(最快) - 全面屏 iPhone(带刘海):**右上角往下滑**...

苹果手机图片怎么备份 iPhone怎么备份照片?

苹果手机图片怎么备份 iPhone怎么备份照片?

一、苹果手机图片怎么备份1、当大家在微信、微博、抖音等应用上看到感兴趣的图片时,会将图片保存到相册中,随着图片越存越多,大家需要将保存在相册里的图片进行备份,此时可以使用电脑软件iMazing来辅助完成。打开iMazing软件后,点击图1红框标出的“照片”入口,进入照片管理界面中。图1:进入照片管理...

什么是科技数据?

科技数据,本质上是通过电子设备(手机、电脑、服务器等)采集、存储、传输和处理的各类信息的集合,以二进制代码的形式存在,是数字科技的基础。与我们传统认知中的“文件”不同,科技数据的范畴更广泛,既包括我们主动创建的照片、文档、视频(主动数据),也包括设备运行时自动生成的缓存、日志、定位信息(被动数据);...

云空间不够用?解决办法

一、清理无用数据(最快见效)删除重复照片、模糊截图、过期视频、无用录屏,这类文件占用空间最大。清理软件缓存、垃圾文件、过期安装包、压缩包。删掉不再需要的聊天记录、旧文件、离线缓存内容。二、本地备份,释放云端空间用电脑有线连接手机,把照片、视频、大文件批量保存到电脑硬盘。重要资料存电脑本地,不用全部上...

有哪些适合手机电脑数据同步的免费工具?

有哪些适合手机电脑数据同步的免费工具?

一、局域网高速互传(同 Wi‑Fi,最快、最稳、隐私好)1. LocalSend(强烈推荐,替代 AirDrop / 华为分享)平台:Windows /macOS/ Linux / Android /iOS免费:完全开源免费,无广告、无账号、不限大小特点:同 Wi‑Fi 下自动发现设备,一键发送点对...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。