Skip to content

No "driver" field for secrets in stack deploy #1782

@sirlatrom

Description

@sirlatrom

Description

docker stack deploy does not support setting the driver for a secret. This has been supported in the Engine API and on the command-line since 0ee9e05 (July 30 2017).

Steps to reproduce the issue:

  1. Install a secretprovider driver plugin:
docker plugin install sirlatrom/docker-secretprovider-plugin-vault
  1. Create a minimal docker-compose.yml file:
version: "3.7"
services:
  service:
    image: busybox
    command: tail -f /dev/null
    secrets:
      - secret
secrets:
  secret:
    driver: sirlatrom/docker-secretprovider-plugin-vault
  1. Run docker stack deploy --compose-file docker-compose.yml repro

Describe the results you received:

driver Additional property driver is not allowed

Describe the results you expected:

Creating network repro_default                                                               
Creating service repro_service

Additional information you deem important (e.g. issue happens only occasionally):
This would be awesome to have in Docker Compose format 3.8 and Engine 19.03.

Output of docker version:

Client:
 Version:           18.09.4-rc1
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        9d6081e
 Built:             Thu Mar 21 03:16:00 2019
 OS/Arch:           linux/amd64
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          0.0.0-20190325050551-9374b8d
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.11.5
  Git commit:       9374b8d
  Built:            Mon Mar 25 06:53:44 2019
  OS/Arch:          linux/amd64
  Experimental:     true
 containerd:
  Version:          1.2.5
  GitCommit:        bb71b10fd8f58240ca47fbb579b9d1028eea7c84
 runc:
  Version:          1.0.0-rc6+dev
  GitCommit:        96ec2177ae841256168fcf76954f7177af9446eb
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Output of docker info:

Containers: 23
 Running: 4
 Paused: 0
 Stopped: 19
Images: 261
Server Version: 0.0.0-20190325050551-9374b8d
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host ipvlan macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: active
 NodeID: wgg8dkg4jubt4g9vyuobf7765
 Is Manager: true
 ClusterID: 9w86yptgh4f8qjxh4jmzrm0mp
 Managers: 1
 Nodes: 1
 Default Address Pool: 10.0.0.0/8
 SubnetSize: 24
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Number of Old Snapshots to Retain: 0
  Heartbeat Tick: 1
  Election Tick: 10
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
  Force Rotate: 0
 Autolock Managers: false
 Root Rotation In Progress: false
 Node Address: 10.108.102.138
 Manager Addresses:
  10.108.102.138:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: bb71b10fd8f58240ca47fbb579b9d1028eea7c84
runc version: 96ec2177ae841256168fcf76954f7177af9446eb
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 5.0.4-050004-generic
Operating System: Ubuntu 18.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 15.54GiB
Name: lx64pc0265
ID: f2d3250a-67f2-4962-949c-2e160df43f2c
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 75
 Goroutines: 216
 System Time: 2019-03-28T14:00:37.727863947+01:00
 EventsListeners: 3
HTTP Proxy: http://localhost:3128/
HTTPS Proxy: http://localhost:3128/
No Proxy: localhost,127.0.0.0/8,.alm.brand.dk
Registry: https://index.docker.io/v1/
Labels:
Experimental: true
Insecure Registries:
 pregistry001.alm.brand.dk
 172.17.0.1:5002
 gitlab.dev:5002
 gitlab:5002
 lspdtrdc201.alm.brand.dk:445
 lsxdockerdc202.alm.brand.dk
 127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine

Additional environment details (AWS, VirtualBox, physical, etc.):
Physical.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions