Tag: 环境variables

编写.env文件以包含Docker的OAuth凭证

我需要编写一个env文件来包含以下内容:oauth客户端ID,客户端密钥和callbackURL 我以前从来没有写过一个env文件,而且我不确定上述三个标签(或键)是什么。 我知道我从我的OAuth应用程序获取值。 我也明白如何用Docker执行env文件。 请帮忙!

如何为Docker-compose文件设置一个var?

我做了一个应用程序,我需要在我们的实验室进行testing。 我的同事做了一个docker-compose.yml文件,但今天没有人在办公室,我迷失在这个文件中的一行: image: gitlab-${DOCKERADM_ENV}:5005/rims/mgmt-docker-gui:lab 因为当我做docker-compose -f docker-compose-mgmt.yml pull我有一个错误DOCKERADM_ENV is not set 。 我想设置这个variables,但是我该怎么做呢?

将主机环境variables传递给dockerfile

我如何将主机环境variables(如用户和主机名)传递给dockerfile? 例如,如果我的用户名是taha : echo $USER taha 我如何编写我的Docker文件来获得相同的输出? FROM centos:centos7 ARG myuser=$USER CMD echo $myuser

使用环境variables运行容器testing

我可以login到我的Python容器 docker exec -it my_container bash 一旦进入,我可以更改环境variables并在单个命令中运行testing, APP_ENV="test" python ./manage.py test 此外,我可以运行testing,而无需login到容器使用 docker exec -it my_container python ./manage.py test 但是如果我尝试更改环境variables并在单个命令中运行testing, docker exec -it my_container APP_ENV="test" python ./manage.py test 我得到一个错误: rpc error:code = 2 desc = oci runtime error:exec failed:container_linux.go:262:Starting container process caused“exec:\”APP_ENV = test \“:executable path file not found in $ PATH” 我怎样才能改变环境variables,并在一个命令中运行testing,而不先login到容器?

Docker环境variables在多阶段构build中

给这个.env文件: TEST=33333 给这个docker-compose.yml文件: service_name: image: test env_file: .env environment: TEST: 22222 给这个Dockerfile文件: FROM an_image AS builder FROM another_image ENV TEST 11111 CMD ["/bin/echo $TEST"] 每当我在一个容器中构build并运行这个图像,它就会打印11111 。 如果我从Dockerfile中删除ENV 11111行,我的TEST环境variables是空的… 父图像是否接收环境variables而不是子图像? 谢谢! 编辑: 尝试ENV TEST ${TEST}没有工作($ TEST是空的) 删除ENV TEST没有工作($ TEST是空的)

将环境variables传递给dockerfile构build

我正在尝试在Docker容器中创build一个由Web服务器和数据库组成的服务。 目前我正在尝试为它们包含数据库凭证创build相同的环境文件。 不幸的是,当我尝试用它build立数据库时,事实certificate它们是空的。 我如何使用单个环境文件为这两个组件创build一个项目? 这是我的docker-compose.yml: version: '2' services: db: build: context: . dockerfile: Dockerfile-db ports: – '5433:5432' env_file: – env web: build: . ports: – '8000:8000' command: venv/bin/python manage.py runserver 0.0.0.0:8000 depends_on: – db env_file: – env 这是我负责创build数据库的Dockerfile-db文件的一部分: FROM ubuntu:16.04 RUN apt-get update && apt-get install -y postgresql-9.5-postgis-2.2 USER postgres ARG DB_PASSWORD ARG DB_NAME RUN […]

如何在Dockerfile中设置一个variablesENV以便在Docker容器中重写?

我有一个容器,应该与IP用户创build。 这就是我在Dockerfile中的内容: ENV REMOTE_HOST=xxxxxxxxxx RUN { \ echo '[xdebug]'; \ echo 'zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so'; \ echo 'xdebug.remote_enable=1'; \ echo 'xdebug.remote_port=9000'; \ echo 'xdebug.remote_autostart=1'; \ echo 'xdebug.remote_handler=dbgp'; \ echo 'xdebug.idekey=dockerdebug'; \ echo 'xdebug.profiler_output_dir="/var/www/html"'; \ echo 'xdebug.remote_connect_back=0'; \ echo 'xdebug.remote_host=$REMOTE_HOST'; \ } >> /usr/local/etc/php/php.ini 这就是我如何创build从该Dockerfile派生的容器:dockerrun从该Dockerfile的图像: docker run -e REMOTE_HOST=123456 -p 80:80 -v /Users/myusrname/Documents/mysite:/var/www/html myImage 这是我在php.ini里面的容器: root@1713e0a338f9:/var/www/html# cat /usr/local/etc/php/php.ini … […]

ENVvariables未正确添加到容器环境

这是我的Dockefile FROM ubuntu:latest MAINTAINER mazzy WORKDIR /tmp RUN apt-get update && apt-get install -y wget RUN wget http://nodejs.org/dist/v0.12.0/node-v0.12.0-linux-x64.tar.gz RUN tar xvf node-v0.12.0-linux-x64.tar.gz RUN cp -r node-v0.12.0-linux-x64 /usr/local/ WORKDIR /usr/local RUN ln -s /usr/local/node-v0.12.0-linux-x64.tar.gz /usr/local/node # FIX HERE ENV PATH /usr/local/node/bin:$PATH RUN npm install -g bower EXPOSE 8080:8080 这个Dockerfile的问题是,当我运行它时,我得到了错误npm找不到。 这可能是由于安装文件夹未正确添加到PATH envvariables所致。 你知道为什么吗?

将Docker ENVvariables传递给Rails应用程序

我正在testing一个利用docker集装箱的铁路应用程序。 我试图做的是传递一个ENVvariables运行使用-e标志,如下所示: docker run -p 3000:3000 -d -e "DOCKER_HOST=$(ip -4 addr show docker0 | grep -Po 'inet \K[\d.]+')" somerepo/image:tag 。 这是我知道的,因为当我撞到容器并运行env我得到正确的variables集: $ env HOSTNAME=1641e2f6c81f GEM_HOME=/usr/local/bundle DOCKER_HOST=172.17.0.1 … 当我尝试在rails应用程序中设置mongoid.yml ,如下所示: production: clients: default: database: somerailsdb hosts: – ${DOCKER_HOST}:27017 options: options: 当我尝试获取数据库logging时,出现以下mongodb错误: App 10040 stdout: D, [2016-01-10T11:40:07.085516 #10040] DEBUG — : MONGODB | getaddrinfo: Name or service […]

docker运行`输出到bashvariables – 奇怪的行为

我看到一些奇怪的行为,从docker run输出到bashvariables。 简单的例子: #!/bin/bash PWD=$(docker run –rm -ti ubuntu pwd 2>&1) # also tried with PWD=`docker run …` with same behaviour echo $PWD echo abc $PWD echo abc $PWD xyz 产量 / abc / xyz/ 问题是在最后一个echo …