#container #cli #docker #lxc

bin+lib in-container

Determines if it is running in a container

2 releases (1 stable)

1.0.0 Jul 17, 2020

#1802 in Command line utilities

MIT/Apache

14KB
246 lines

in-container

in-container is a binary and a library that can be used to detect if you are running inside a container. Executing the binary will by default return exit-code 0 if it was run inside a container and exit-code 1 if it wasn't. The library can be included in an application of your choice, allowing you to determine whether your application is running inside a container or not.

(Please note that some of the detection mechanisms only work if in-container is executed in a privileged context.)

Supported operating systems/containerization solutions

If you are missing support for an operating system or container runtime, feel free to open a feature request or open a pull request.

Usage as a library

Add in-container as a dependency to your project's Cargo.toml:

[dependencies]
in-container = "^1"

You can then use in_container::in_container() which will return true if you are running inside a container and false otherwise. In case you are interested in the container-runtime that was detected, you can call in_container::get_container_runtime() instead, which will return an Option<ContainerRuntime>. The Option is None when not running in a container, otherwise it will contain the detected runtime.

License

This project is licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1.5–2MB
~35K SLoC

E_