根据文档,可以为标记-build-arg定义多个参数,但我不知道如何定义。我尝试了以下方法:
docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5 number_of_replicas=2 --no-cache .
=>返回一个错误。
我还试过:
docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5,number_of_replicas=2 --no-cache .
这将设置一个变量number_of_shards的值为“5,number_of_replicas=2”
知道如何定义多个参数吗?
如果您想在构建期间使用环境变量。比如设置用户名和密码。
username= Ubuntu
password= swed24sw
Dockerfile
FROM ubuntu:16.04
ARG SMB_PASS
ARG SMB_USER
# Creates a new User
RUN useradd -ms /bin/bash $SMB_USER
# Enters the password twice.
RUN echo "$SMB_PASS\n$SMB_PASS" | smbpasswd -a $SMB_USER
终端命令
docker build——build-arg SMB_PASS=swed24sw——build-arg SMB_USER=Ubuntu。- t IMAGE_TAG
如果您想在构建期间使用环境变量。比如设置用户名和密码。
username= Ubuntu
password= swed24sw
Dockerfile
FROM ubuntu:16.04
ARG SMB_PASS
ARG SMB_USER
# Creates a new User
RUN useradd -ms /bin/bash $SMB_USER
# Enters the password twice.
RUN echo "$SMB_PASS\n$SMB_PASS" | smbpasswd -a $SMB_USER
终端命令
docker build——build-arg SMB_PASS=swed24sw——build-arg SMB_USER=Ubuntu。- t IMAGE_TAG