moby: internal Additional property internal is not allowed (docker stack deploy with compose v3 file)

Description

The internal key doesn’t seem to work when creating a network with docker stack deploy and a docker-compose file (v3 format).

Steps to reproduce the issue:

  1. create a docker-compose.yml file with this content:
version: '3.0'

networks:
  foo:
    driver: overlay
    internal: true
  1. deploy it:
$ docker stack deploy -c docker-compose.yml foo
  1. watch it fail 💥:
$ docker stack deploy -c docker-compose.yml foo
internal Additional property internal is not allowed

Describe the results you received:

(see above)

Describe the results you expected:

An internal network to be created 😃

Output of docker version:

$ docker version
Client:
 Version:      1.13.0-rc7
 API version:  1.25
 Go version:   go1.7.3
 Git commit:   48a9e53
 Built:        Fri Jan 13 21:41:57 2017
 OS/Arch:      darwin/amd64

Server:
 Version:      1.13.0-rc7
 API version:  1.25 (minimum version 1.12)
 Go version:   go1.7.3
 Git commit:   48a9e53
 Built:        Fri Jan 13 21:41:57 2017
 OS/Arch:      linux/amd64
 Experimental: true

Output of docker info:

$ docker info
Containers: 2
 Running: 1
 Paused: 0
 Stopped: 1
Images: 606
Server Version: 1.13.0-rc7
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
Swarm: active
 NodeID: 62ji4rbm9cp6lluyrz7acl00y
 Is Manager: true
 ClusterID: ap5aksi3rjbalc5zvhrut4rf7
 Managers: 1
 Nodes: 1
 Orchestration:
  Task History Retention Limit: 10
 Raft:
  Snapshot Interval: 10000
  Number of Old Snapshots to Retain: 0
  Heartbeat Tick: 1
  Election Tick: 3
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
 Node Address: 192.168.65.2
 Manager Addresses:
  192.168.65.2:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e
runc version: 2f7393a47307a16f8cee44a37b262e8b81021e3e
init version: 949e6fa
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.9.3-moby
Operating System: Alpine Linux v3.5
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.952 GiB
Name: moby
ID: 5OHX:44FP:GRVY:CK7Y:J7R5:P7YY:YMZB:JN4G:HN2G:IWIE:L742:SHNP
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 67
 Goroutines: 353
 System Time: 2017-01-19T16:56:58.766066099Z
 EventsListeners: 2
No Proxy: *.local, 169.254/16
Username: hairyhenderson
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

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

Docker for Mac 1.13.0-rc7-beta37 (15013)

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 17 (12 by maintainers)

Most upvoted comments

https://github.com/docker/docker/pull/31653 was merged and will be in 17.03.1, so let me close this again, thanks!

Updating to 17.12.0 led to the same problem.

However, changing the version to 3.5 did fix the error I had. So, might be how things work. It’s good enough for me anyway.

Thanks for the answer.

@hairyhenderson I have the same issue with the keys mode and placement.

Actually, those keys do work, but need to be placed under the deploy key per service. Sorry for the confusion.

@thaJeztah @dnephin Still experiencing the issue but with attachable property, should I open a new issue?

# Mac OS X 10.11.6

$ docker version
Client:
 Version:      17.09.1-ce
 API version:  1.32
 Go version:   go1.8.3
 Git commit:   19e2cf6
 Built:        Thu Dec  7 22:22:25 2017
 OS/Arch:      darwin/amd64

Server:
 Version:      17.09.1-ce
 API version:  1.32 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   19e2cf6
 Built:        Thu Dec  7 22:28:28 2017
 OS/Arch:      linux/amd64
 Experimental: true

$ cat docker-stack.attachable-problem.yml
version: '3'
networks:
  host-network:
    driver: overlay
    attachable: true

$ docker stack deploy -c docker-stack.attachable-problem.yml test
attachable Additional property attachable is not allowed