@@ -29,12 +29,41 @@ A third party security audit was performed by Cure53, you can see the full repor
2929
3030` runc ` only supports Linux. It must be built with Go version 1.21 or higher.
3131
32+ ### Pre-Requisites
33+
34+ #### Go
35+
3236NOTE: if building with Go 1.22.x, make sure to use 1.22.4 or a later version
3337(see [ issue #4233 ] ( https://github.com/opencontainers/runc/issues/4233 ) for
3438more details).
3539
36- In order to enable seccomp support you will need to install ` libseccomp ` on your platform.
37- > e.g. ` libseccomp-devel ` for CentOS, or ` libseccomp-dev ` for Ubuntu
40+ #### Utilities and Libraries
41+
42+ In addition to Go, building ` runc ` requires multiple utilities and libraries to be installed on your system.
43+
44+ On Ubuntu/Debian, you can install the required dependencies with:
45+
46+ ``` bash
47+ apt update && apt install -y make gcc linux-libc-dev libseccomp-dev pkg-config git
48+ ```
49+
50+ On CentOS/Fedora, you can install the required dependencies with:
51+
52+ ``` bash
53+ yum install -y make gcc kernel-headers libseccomp-devel pkg-config git
54+ ```
55+
56+ On Alpine Linux, you can install the required dependencies with:
57+
58+ ``` bash
59+ apk --update add bash make gcc libseccomp-dev musl-dev linux-headers git
60+ ```
61+
62+ The following dependencies are optional:
63+
64+ * ` libseccomp ` - only required if you enable seccomp support; to disable, see [ Build Tags] ( #build-tags )
65+
66+ ### Build
3867
3968``` bash
4069# create a 'github.com/opencontainers' in your GOPATH/src
@@ -57,7 +86,6 @@ sudo make install
5786
5887` runc ` will be installed to ` /usr/local/sbin/runc ` on your system.
5988
60-
6189#### Build Tags
6290
6391` runc ` supports optional build tags for compiling support of various features,
@@ -118,7 +146,7 @@ You can run a test using your container engine's flags by setting `CONTAINER_ENG
118146# make test CONTAINER_ENGINE_BUILD_FLAGS="--build-arg http_proxy=http://yourproxy/" CONTAINER_ENGINE_RUN_FLAGS="-e http_proxy=http://yourproxy/"
119147```
120148
121- ### Dependencies Management
149+ ### Go Dependencies Management
122150
123151` runc ` uses [ Go Modules] ( https://github.com/golang/go/wiki/Modules ) for dependencies management.
124152Please refer to [ Go Modules] ( https://github.com/golang/go/wiki/Modules ) for how to add or update
0 commit comments