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.