Tag: 环境variables

将环境dockervariables导出到文件

我有一个非常简单的docker文件: FROM tomcat:7.0 RUN echo $HOST_IP > /opt/serverIP 当我用跟随命令运行我的镜像(my-server)时,文件/opt/serverIP存在并且是空的: docker run -e HOST_IP='172.16.1.1' -t my-server cat /opt/serverIP 如何将我的环境价值写入临时文件? 我的docker版本:docker版本1.12.1,build立23cf638 这是我的机器信息: 内核版本:4.4.0-36-通用 操作系统:Ubuntu 16.04 LTS OSType:linux 架构:x86_64 CPU:4 总内存:7.703 GiB

剧本中的容器variables

使用容器(版本0.2.0),并尝试使用var_files指令将variables传递到playbook(main.yml)。 没有运气。 继续: ansible-container_1 | ERROR! 'var_files' is not a valid attribute for a Play main.yml文件有这个块: – hosts: all var_files: – postgres_vars.yml 文件似乎表明这是正确的做法。 https://docs.ansible.com/ansible-container/container_yml/template.html#passing-variables-to-your-playbook 所有的build议感激。 跟进:尝试了文档中列出的build议,他们似乎也没有工作。 sudo ansible-container –var-file ./ansible/postgres_vars.yml build –from-scratch 缺lessvariables名称错误。

docker-compose无法从SOME.env文件中检索variables

正如https://docs.docker.com/compose/compose-file/#envfile所述 ,我可以把环境variables放到特定的文件中。 但是我做不到。 在过去的几个小时里无法弄清楚,即使我已经将Docker(Docker版本1.12.5)和docker-compose(版本1.9.0)升级到了lateste版本。 泊坞窗,compose.yml: version: '2' services: box: image: busybox env_file: tt.env command: echo $RACK_ENV tt.env # Set Rails/Rack environment RACK_ENV=development docker的输出组合起来会是这样的: WARNING: The RACK_ENV variable is not set. Defaulting to a blank string. Creating network "test_default" with the default driver Creating test_box_1 Attaching to test_box_1 box_1 | test_box_1 exited with code 0 这意味着在tt.env文件中设置的variables不能被成功检索。 […]

如何有bash脚本回答交互式提示(没有y / n只)?

我正在尝试使用名为PHPCI的工具来构build一个Docker镜像。 我几乎能够做所有事情,但是当我需要运行创build数据库的设置脚本,设置用户名/密码,以及为工具本身进行某种默认configuration时,出现了第一个问题。 该脚本应该被称为( 见这里 – 从Composer安装): php ./console phpci:install 它会开始提出一些问题。 这是一个被问到的问题的完整例子: ****************** Welcome to PHPCI ****************** Checking requirements… OK Please answer the following questions: ————————————- Please enter your MySQL host [localhost]: Please enter your MySQL database name [phpci]: Please enter your MySQL username [phpci]: Please enter your MySQL password: Your PHPCI URL ("http://phpci.local" for example): […]

Docker组合共享环境variables

泊坞窗,compose.yml version: '2.1' services: db1: […] healthcheck: .. db2: […] healthcheck: .. service1: […] links: – db1:dbname – db2:dbname depends_on: db1: condition: service_healthy db2: condition: service_healthy 但是,主服务service1因为正在从数据库中查找环境variables而失败, ${env.DBNAME_PORT_3306_TCP_ADDR} ${env.DBNAME_PORT_3306_TCP_PORT} ${env.DBNAME_ENV_MYSQL_DATABASE} 我知道撰写文档状态“环境variables不再是连接到链接服务的推荐方法,只有在使用旧版本1撰写文件格式时才会填充环境variables。 但如果没有他们,我可以在这里做很多事情。 这里最好的做法是什么? 谢谢!

Dockerfile和环境variables

我有一个奇怪的行为与我的Dockerfile。 我尝试使用来自环境variables的文本写入文件: FROM ubuntu:14.04 ENV KEY '' ENV VAL '' RUN echo "${KEY}:${VAL}" > /etc/test CMD [] 我build立了这个图像,像这样运行: docker run -it –rm -e KEY=aaa -e VAL=bbb mytest 如果我显示/ etc / test文件,它是空的(它存在,但是是空的)。 似乎创build文件时,环境variables没有设置。 任何想法? 谢谢

通过应用程序使用的jar文件传递环境variables

我目前正在尝试在我的应用程序和数据库容器之间的泊坞窗链接。 我检查了我的应用程序容器,当我将容器链接在一起时,环境variables会自动设置。 我想要做的是将我的configuration文件打包成jar文件,以接收环境variables并为其设置所需的值。 任何build议或帮助? 这就是我如何在我的jar文件中创build一个configuration文件来连接到MySQL database { url="jdbc:mysql://${MYSQL_PORT_3306_TCP_ADDR}:${MYSQL_PORT_3306_TCP_PORT}/mydb" driver="com.mysql.jdbc.Driver"}

为什么Docker的秘密比环境variables更安全?

我正在阅读Docker的秘密,并继续阅读,Docker的人故意select在/run/secrets下的文件中存储秘密,而不是使用环境variables。 但是我什么都找不到解释。 所以我问:为什么使用Docker Secrets机制比将环境variables注入到容器(通过-e或者–env-file )更安全?

将所有主机环境variables传递给Docker容器的最简单的方法

使用docker运行一堆-e标志甚至一个.env似乎麻烦。 有没有简单的方法只是将所有的主机envvariables传递给一个docker容器

在Docker容器中不能更改环境variables

docker run -e HOST_IP:xxxx 我使用cmd来检查env HOST_IP改变了: docker exec CONTAINER_ID env |grep HOST_IP 我发现这些尝试后没有改变: docker exec CONTAINER_ID bash -c 'export HOST_IP=XXX' docker exec CONTAINER_ID bash -c 'echo HOST_IP=XXX >> ~/.bashrc && source ~/.bashrc' 为什么? 什么控制了envvariables?