web-dev-qa-db-ja.com

acme.jsonのtraefikパーミッション777がオープンすぎます。600を使用してください

はい、httpsでtraefikを実行しようとするとこれが発生します。問題は、Win7マシンにdirをマウントしましたが、ファイルをchmodできないことです。

マウントは機能していますが、ファイルのアクセス許可がオフになっています。

このように見えます:

volumes
  - d:/docker/traefikcompose/acme/acme.json:/etc/traefik/acme/acme.json:rw

traefik | time = "2018-09-04T12:57:11Z" level = error msg = "プロバイダーの開始エラー* acme.Provider:ACMEアカウントを取得できません:/etc/traefik/acme/acme.jsonのアクセス許可777が開いています。 600 "を使用してください

Acme.jsonファイルを削除すると、次のようになります。

エラー:traefikの場合サービスを開始できませんtraefik:b'OCIランタイムの作成に失敗しました:container_linux.go:348:コンテナプロセスの開始により "process_linux.go:402:コンテナの初期化により\" rootfs_linux.go:58:マウント\\\ "/ d/docker/traefikcompose/acme/acme.json \\\ "からrootfs \\\"/mnt/sda1/var/lib/docker/aufs/mnt/c84d8644252848bde8f0322bafba3d206513ceb8479eb95aeee0b4cafd4a7251 \\\ "at \\\"/mnt/sda /var/lib/docker/aufs/mnt/c84d8644252848bde8f0322bafba3d206513ceb8479eb95aeee0b4cafd4a7251/etc/traefik/acme/acme.json \\\ "原因\\\"ディレクトリではありません\\\ "\" ":不明:マウントしようとしていますかディレクトリをファイルに(またはその逆)?指定されたホストパスが存在し、予期されるタイプであるかどうかを確認してください。

4
mapa0402

Cooshalsの親切な助けのおかげで、私はついに解決策を見つけました、

virtualbox-machineにSSHで接続し、そこでファイルを作成してから、docker-compose.ymlから直接ポイントする必要があります。この場合、私は次のようにしました。

docker-machine ssh default
touch /var/acme.json
chmod 600 /var/acme.json

次に、私のdocker-composeで:

volumes:
 - /var/:/var/acme.json

最後にtraefik.tomlで:

[acme]
  storage = "acme.json"
2
mapa0402

上記の回答に加えて、acme.jsonファイルの作成を自動化し、必要な権限を割り当てるには、Dockerfileを作成し、それをdocker.compose.ymlで呼び出します。

FROM traefik:2.2

RUN touch /acme.json \
  && chmod 600 /acme.json
0
w3spi