3

証明書管理のために Docker Compose と Secrets を使用して IMAP サーバーを展開しようとしています。しかし、やるとすぐにdocker-compose up -d、次のようになります。

警告: サービス「imap」は、uid、gid、またはモードで秘密の「鍵」を使用します。これらのフィールドは、Compose ファイルのこの実装ではサポートされていません

この警告は、証明書シークレットについても繰り返されます。

インストールされている構成バージョンと必要なバージョンの間の互換性を既に確認しましたが、すべて問題ないようです。

Docker エンジン バージョン17.06.0-ceと Docker Compose バージョン1.14.0で実行しています。


そして、これは私の作成ファイルです:

version: '3.1'

    services:
        imap:
            image: cyrus
            hostname: cyrus
            volumes:
                - my_volume_1
                - my_volume_2
                - my_volume_3
                - my_volume_4
            secrets:
                - source: key
                  target: my.key
                  uid: '0'
                  gid: '109'
                  mode: 0640
                - source: cert
                  target: my.crt
                  uid: '0'
                  gid: '109'
                  mode: 0640

            ports:
                - 110:110
                - 143:143
                - 993:993
                - 995:995
                - 4190:4190
            restart: always
            networks:
                - mail
        logger:
            image: gliderlabs/logspout
            hostname: logspout
            volumes:
                - /var/run/docker.sock:/var/run/docker.sock
            networks:
                - mail
            command: syslog://log-server-ip:514

    networks:
        mail:
            driver: bridge
    secrets:
        key:
            file: ./my.key
        cert:
            file: ./my.crt  

これは実際には機能しますが、コンテナー内で生成されたファイルには、必要なプロパティ (uid: 0、gid: 109、モード: 0640) がないため、コンテナーの起動時にファイルの所有権とモードを手動で変更する必要があります。 .

それについて考えたことはありますか?

4

1 に答える 1