github.com/docker/compose-on-kubernetes@v0.5.0/docs/compatibility.md (about) 1 # Natively support Compose files on Kubernetes 2 3 These are the Compose file features supported on Kubernetes 4 5 | Feature | docker stack deploy | Compose on Kubernetes | 6 |----------------------------|---------------------|------------------------| 7 | build | | | 8 | - context | | | 9 | - dockerfile | | | 10 | - args | | | 11 | - cache_from | | | 12 | - labels | | | 13 | cap_add | | Yes | 14 | cap_drop | | Yes | 15 | command | Yes | Yes | 16 | configs | Yes | Yes | 17 | - external | Yes | Yes | 18 | - file | Yes | Yes | 19 | - mode | Yes | Yes | 20 | cgroup_parent | | | 21 | container_name | | | 22 | credential_spec | Yes | | 23 | deploy | Yes | | 24 | - endpoint_mode: vip | Yes | Yes | 25 | - endpoint_mode: dnsrr | Yes | | 26 | - labels | Yes | Yes | 27 | - mode | Yes | Yes | 28 | - placement | Yes | Partial | 29 | - replicas | Yes | Yes | 30 | - resources | Yes | Yes | 31 | -- limits | Yes | Yes | 32 | -- reservations | Yes | Yes | 33 | - restart_policy | Yes | Yes | 34 | -- condition: none | Yes | Yes | 35 | -- condition: on-failure | Yes | Yes | 36 | -- condition: any | Yes | Yes | 37 | -- delay | Yes | | 38 | -- max_attempts | Yes | | 39 | -- window | Yes | | 40 | - update_config | Yes | | 41 | -- parallelism | Yes | Yes | 42 | -- delay | Yes | | 43 | -- failure_action | Yes | | 44 | -- monitor | Yes | | 45 | -- max_failure_ratio | Yes | | 46 | - devices | | | 47 | - depends_on | | | 48 | - dns | | | 49 | - dns_search | | | 50 | - tmpfs | | Yes | 51 | - entrypoint | Yes | Yes | 52 | - env_file | Yes | Yes | 53 | - environment | Yes | Yes | 54 | -- key=value | Yes | Yes | 55 | -- key | Yes | | 56 | - expose | Yes | Yes | 57 | - external_links | | | 58 | - extra_hosts | Yes | Yes | 59 | - healthcheck | Yes | Yes | 60 | -- test | Yes | Yes | 61 | -- test: NONE | Yes | Yes | 62 | -- interval | Yes | Yes | 63 | -- timeout | Yes | Yes | 64 | -- retries | Yes | Yes | 65 | -- disable | Yes | Yes | 66 | - image | Yes | Yes | 67 | - isolation | Yes | | 68 | - labels | Yes | Yes | 69 | - links | | | 70 | - logging | Yes | | 71 | -- driver | Yes | | 72 | -- options | Yes | | 73 | - network_mode | | | 74 | - networks | Yes | | 75 | -- aliases | Yes | | 76 | -- ipv4_address | Yes | | 77 | -- ipv6_address | Yes | | 78 | - pid: host | Yes | Yes | 79 | - ports | Yes | Yes | 80 | -- target | Yes | Yes | 81 | -- published | Yes | Yes | 82 | -- protocol | Yes | Yes | 83 | -- mode: host | Yes | Not sure | 84 | -- mode: ingress | Yes | Not sure | 85 | - secrets | Yes | Yes | 86 | -- source | Yes | Yes | 87 | -- target | Yes | Yes | 88 | -- uid | Yes | | 89 | -- gid | Yes | | 90 | -- mode | Yes | Yes | 91 | - security_opt | | | 92 | - stop_grace_period | Yes | Yes | 93 | - stop_signal | | | 94 | - sysctls | | | 95 | - ulimits | | | 96 | - userns_mode | | | 97 | - volumes | Yes | Yes | 98 | -- type: volume | Yes | Yes | 99 | -- type: bind | Yes | Yes | 100 | -- source | Yes | Yes | 101 | -- target | Yes | Yes | 102 | -- read_only | Yes | Yes | 103 | -- bind/propagation | Yes | | 104 | -- volume/nocopy | Yes | | 105 | - restart | | | 106 | - domainname | | | 107 | - hostname | Yes | Yes | 108 | - ipc | | Yes | 109 | - mac_address | | | 110 | - privileged | | Yes | 111 | - read_only | Yes | Yes | 112 | - shm_size | | | 113 | - stdin_open | Yes | Yes | 114 | - tty | Yes | Yes | 115 | - user: numerical | Yes | Yes | 116 | - user: name | Yes | | 117 | - working_dir | Yes | Yes | 118 119 # Not supported by k8s 120 121 + mac_address (https://github.com/kubernetes/kubernetes/issues/2289) 122 + shm_size (https://github.com/kubernetes/kubernetes/issues/28272) 123 + ulimits (https://github.com/kubernetes/kubernetes/issues/3595) 124 + non numerical user 125 126 # Placeholders interpolation 127 128 Before a yaml file is sent to Kubernenetes, its `${...}` placeholders 129 are replaced with actual values. 130 + A first attempt is made at reading the variable from a `.env` file is 131 current working directory. 132 + If no value is found, an environment variable are used.