gvisor.dev/gvisor@v0.0.0-20240520182842-f9d4d51c7e0f/g3doc/user_guide/compatibility.md (about)

     1  # Applications
     2  
     3  [TOC]
     4  
     5  gVisor implements a large portion of the Linux surface and while we strive to
     6  make it broadly compatible, there are (and always will be) unimplemented
     7  features and bugs. The only real way to know if it will work is to try. If you
     8  find a container that doesn’t work and there is no known issue, please
     9  [file a bug][bug] indicating the full command you used to run the image. You can
    10  view open issues related to compatibility [here][issues].
    11  
    12  If you're able to provide the [debug logs](../debugging/), the problem likely to
    13  be fixed much faster.
    14  
    15  ## What works?
    16  
    17  The following applications/images have been tested:
    18  
    19  *   elasticsearch
    20  *   golang
    21  *   httpd
    22  *   java8
    23  *   jenkins
    24  *   mariadb
    25  *   memcached
    26  *   mongo
    27  *   mysql
    28  *   nginx
    29  *   node
    30  *   php
    31  *   postgres
    32  *   prometheus
    33  *   python
    34  *   redis
    35  *   registry
    36  *   rust
    37  *   tomcat
    38  *   wordpress
    39  
    40  ## Utilities
    41  
    42  Most common utilities work. Note that:
    43  
    44  *   Some tools, such as `tcpdump` and old versions of `ping`, require explicitly
    45      enabling raw sockets via the unsafe `--net-raw` runsc flag.
    46      *   In case of tcpdump the following invocations will work
    47          *   tcpdump -i any
    48          *   tcpdump -i \<device-name\> -p (-p disables promiscuous mode)
    49  *   Different Docker images can behave differently. For example, Alpine Linux
    50      and Ubuntu have different `ip` binaries.
    51  
    52      Specific tools include:
    53  
    54  <!-- mdformat off(don't wrap the table) -->
    55  
    56  | Tool       | Status                                                                                              |
    57  | :--------: | :-----------------------------------------:                                                         |
    58  | apt-get    | Working.                                                                                            |
    59  | bundle     | Working.                                                                                            |
    60  | cat        | Working.                                                                                            |
    61  | curl       | Working.                                                                                            |
    62  | dd         | Working.                                                                                            |
    63  | df         | Working.                                                                                            |
    64  | dig        | Working.                                                                                            |
    65  | drill      | Working.                                                                                            |
    66  | env        | Working.                                                                                            |
    67  | find       | Working.                                                                                            |
    68  | gcore      | Working.                                                                                            |
    69  | gdb        | Working.                                                                                            |
    70  | gosu       | Working.                                                                                            |
    71  | grep       | Working.                                                                                            |
    72  | ifconfig   | Works partially, like ip. Full support [in progress](https://gvisor.dev/issue/578).                 |
    73  | ip         | Some subcommands work (e.g. addr, route). Full support [in progress](https://gvisor.dev/issue/578). |
    74  | less       | Working.                                                                                            |
    75  | ls         | Working.                                                                                            |
    76  | lsof       | Working.                                                                                            |
    77  | mount      | Works in readonly mode. gVisor doesn't currently support creating new mounts at runtime.            |
    78  | nc         | Working.                                                                                            |
    79  | nmap       | Not working.                                                                                        |
    80  | netstat    | [In progress](https://gvisor.dev/issue/2112).                                                       |
    81  | nslookup   | Working.                                                                                            |
    82  | ping       | Working.                                                                                            |
    83  | ps         | Working.                                                                                            |
    84  | route      | Working.                                                                                            |
    85  | ss         | [In progress](https://gvisor.dev/issue/2114).                                                       |
    86  | sshd       | Partially working. Job control [in progress](https://gvisor.dev/issue/154).                         |
    87  | strace     | Working.                                                                                            |
    88  | tar        | Working.                                                                                            |
    89  | tcpdump    | Working [only with libpcap versions < 1.10](https://github.com/google/gvisor/issues/6699), [Promiscuous mode in progress](https://gvisor.dev/issue/3333).                             |
    90  | top        | Working.                                                                                            |
    91  | uptime     | Working.                                                                                            |
    92  | vim        | Working.                                                                                            |
    93  | wget       | Working.                                                                                            |
    94  
    95  <!-- mdformat on -->
    96  
    97  [bug]: https://github.com/google/gvisor/issues/new?title=Compatibility%20Issue:
    98  [issues]: https://github.com/google/gvisor/issues?q=is%3Aissue+is%3Aopen+label%3A%22area%3A+compatibility%22