gpt4 book ai didi

docker - 如何在docker-compose.yml中将ARG传递给Dockerfile

转载 作者:行者123 更新时间:2023-12-02 20:15:30 25 4
gpt4 key购买 nike

我有一个具有以下(简化)结构的项目apkmirror-scraper-compose:

.
├── docker-compose.yml
└── tor
└── Dockerfile
docker-compose.yml
version: '3'

services:
tor:
build:
context: ./tor
args:
password: ""
ports:
- "9050:9050"
- "9051:9051"
Dockerfile目录中的 tor是:
FROM alpine:latest
EXPOSE 9050 9051
ARG password
RUN apk --update add tor
RUN echo "ControlPort 9051" >> /etc/tor/torrc
RUN echo "HashedControlPassword $(tor --quiet --hash-password $password)" >> /etc/tor/torrc
CMD ["tor"]

我正在尝试将参数 password(作为值 ""(空字符串))传递给 Dockerfile,以便它可以使用Tor对其进行哈希处理,并在配置文件中添加 HashedControlPassword行(参见 https://www.torproject.org/docs/tor-manual.html.en)。

但是,如果我在 docker-compose build后跟着 docker-compose up,则日志包含以下内容:
Creating network "apkmirrorscrapercompose_default" with the default driver
Starting apkmirrorscrapercompose_tor_1
Attaching to apkmirrorscrapercompose_tor_1
tor_1 | May 02 08:03:59.344 [notice] Tor v0.2.8.12 running on Linux with Libevent 2.0.22-stable, OpenSSL LibreSSL 2.4.4 and Zlib 1.2.8.
tor_1 | May 02 08:03:59.345 [notice] Tor can't help you if you use it wrong! Learn how to be safe at https://www.torproject.org/download/download#warning
tor_1 | May 02 08:03:59.345 [notice] Read configuration file "/etc/tor/torrc".
tor_1 | May 02 08:03:59.349 [warn] Linelist option 'HashedControlPassword' has no value. Skipping.
tor_1 | May 02 08:03:59.349 [warn] ControlPort is open, but no authentication method has been configured. This means that any program on your computer can reconfigure your Tor. That's bad! You should upgrade your Tor controller as soon as possible.

换句话说, password参数没有被“拾取”:Tor表示它“没有值(value)”。但是,与 https://docs.docker.com/compose/compose-file/#args上的示例相比,我看不到 docker-compose.ymlDockerfile怎么了。

谁能发现问题所在?

最佳答案

我相信问题在于password是一个空字符串。如果我将其替换为"foo",那么docker-compose up似乎可以正常工作。

关于docker - 如何在docker-compose.yml中将ARG传递给Dockerfile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43733184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com