diff --git a/README.en.md b/README.en.md deleted file mode 100644 index 77e402c474406dca668776fba59ebe0d8efa90c9..0000000000000000000000000000000000000000 --- a/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# nerdctl - -#### Description -{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/README.md b/README.md deleted file mode 100644 index 4704b8d44041fbdb9a65dd5c541c61efa948b336..0000000000000000000000000000000000000000 --- a/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# nerdctl - -#### 介绍 -{**以下是 Gitee 平台说明,您可以替换此简介** -Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/nerdctl.spec b/nerdctl.spec new file mode 100644 index 0000000000000000000000000000000000000000..950e1e1829a71a00e873218ab798ec3f5abb30e8 --- /dev/null +++ b/nerdctl.spec @@ -0,0 +1,186 @@ +%define debug_package %{nil} + +Summary: Docker-compatible CLI for containerd +Name: nerdctl +Version: 2.1.2 +Release: 1%{?dist} +License: Apache-2.0 +URL: https://github.com/containerd/nerdctl +# https://github.com/containerd/nerdctl/archive/v%%{version}.tar.gz +# git checkout %%{version} && cd cmd/ && go mod vendor && git add vendor/* && \ +# cd .. && git archive --prefix=%%{name}-%%{version}/ -o %%{version}-vendor.tar.gz HEAD +Source0: %{version}-vendor.tar.gz + +BuildRequires: golang >= 1.23 git make tar gzip +# blank requires for user-defined components + +# vendored libraries +# awk '{print "Provides: bundled(golang("$1")) = "$2}' go.mod | sort | uniq | sed -e 's/-/_/g' -e '/bundled(golang())/d' -e '/bundled(golang(go\|module\|replace\|require))/d' +Provides: bundled(golang(github.com/Azure/go_ansiterm)) = v0.0.0_20250102033503_faa5f7b0171c +Provides: bundled(golang(github.com/cilium/ebpf)) = v0.16.0 +Provides: bundled(golang(github.com/compose_spec/compose_go/v2)) = v2.6.3 +Provides: bundled(golang(github.com/containerd/accelerated_container_image)) = v1.3.0 +Provides: bundled(golang(github.com/containerd/cgroups/v3)) = v3.0.5 +Provides: bundled(golang(github.com/containerd/console)) = v1.0.5 +Provides: bundled(golang(github.com/containerd/containerd/api)) = v1.9.0 +Provides: bundled(golang(github.com/containerd/containerd/v2)) = v2.1.1 +Provides: bundled(golang(github.com/containerd/continuity)) = v0.4.5 +Provides: bundled(golang(github.com/containerd/errdefs/pkg)) = v0.3.0 +Provides: bundled(golang(github.com/containerd/errdefs)) = v1.0.0 +Provides: bundled(golang(github.com/containerd/fifo)) = v1.1.0 +Provides: bundled(golang(github.com/containerd/go_cni)) = v1.1.12 +Provides: bundled(golang(github.com/containerd/go_runc)) = v1.1.0 +Provides: bundled(golang(github.com/containerd/imgcrypt/v2)) = v2.0.1 +Provides: bundled(golang(github.com/containerd/log)) = v0.1.0 +Provides: bundled(golang(github.com/containerd/nerdctl/mod/tigron)) = v0.0.0 +Provides: bundled(golang(github.com/containerd/nydus_snapshotter)) = v0.15.1 +Provides: bundled(golang(github.com/containerd/platforms)) = v1.0.0_rc.1 +Provides: bundled(golang(github.com/containerd/plugin)) = v1.0.0 +Provides: bundled(golang(github.com/containerd/stargz_snapshotter/estargz)) = v0.16.3 +Provides: bundled(golang(github.com/containerd/stargz_snapshotter/ipfs)) = v0.16.3 +Provides: bundled(golang(github.com/containerd/stargz_snapshotter)) = v0.16.3 +Provides: bundled(golang(github.com/containerd/ttrpc)) = v1.2.7 +Provides: bundled(golang(github.com/containerd/typeurl/v2)) = v2.2.3 +Provides: bundled(golang(github.com/containernetworking/cni)) = v1.3.0 +Provides: bundled(golang(github.com/containernetworking/plugins)) = v1.7.1 +Provides: bundled(golang(github.com/containers/ocicrypt)) = v1.2.1 +Provides: bundled(golang(github.com/coreos/go_iptables)) = v0.8.0 +Provides: bundled(golang(github.com/coreos/go_systemd/v22)) = v22.5.0 +Provides: bundled(golang(github.com/creack/pty)) = v1.1.24 +Provides: bundled(golang(github.com/cyphar/filepath_securejoin)) = v0.4.1 +Provides: bundled(golang(github.com/distribution/reference)) = v0.6.0 +Provides: bundled(golang(github.com/djherbis/times)) = v1.6.0 +Provides: bundled(golang(github.com/docker/cli)) = v28.1.1+incompatible +Provides: bundled(golang(github.com/docker/docker_credential_helpers)) = v0.8.2 +Provides: bundled(golang(github.com/docker/docker)) = v28.1.1+incompatible +Provides: bundled(golang(github.com/docker/go_connections)) = v0.5.0 +Provides: bundled(golang(github.com/docker/go_units)) = v0.5.0 +Provides: bundled(golang(github.com/fahedouch/go_logrotate)) = v0.3.0 +Provides: bundled(golang(github.com/fatih/color)) = v1.18.0 +Provides: bundled(golang(github.com/felixge/httpsnoop)) = v1.0.4 +Provides: bundled(golang(github.com/fluent/fluent_logger_golang)) = v1.10.0 +Provides: bundled(golang(github.com/fsnotify/fsnotify)) = v1.9.0 +Provides: bundled(golang(github.com/godbus/dbus/v5)) = v5.1.0 +Provides: bundled(golang(github.com/gogo/protobuf)) = v1.3.2 +Provides: bundled(golang(github.com/go_jose/go_jose/v4)) = v4.0.5 +Provides: bundled(golang(github.com/golang/groupcache)) = v0.0.0_20210331224755_41bb18bfe9da +Provides: bundled(golang(github.com/golang/protobuf)) = v1.5.4 +Provides: bundled(golang(github.com/go_logr/logr)) = v1.4.2 +Provides: bundled(golang(github.com/go_logr/stdr)) = v1.2.2 +Provides: bundled(golang(github.com/google/go_cmp)) = v0.7.0 +Provides: bundled(golang(github.com/go_viper/mapstructure/v2)) = v2.2.1 +Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = v1.1.0 +Provides: bundled(golang(github.com/ipfs/go_cid)) = v0.5.0 +Provides: bundled(golang(github.com/klauspost/compress)) = v1.18.0 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = v2.2.8 +Provides: bundled(golang(github.com/Masterminds/semver/v3)) = v3.3.1 +Provides: bundled(golang(github.com/mattn/go_colorable)) = v0.1.13 +Provides: bundled(golang(github.com/mattn/go_isatty)) = v0.0.20 +Provides: bundled(golang(github.com/mattn/go_shellwords)) = v1.0.12 +Provides: bundled(golang(github.com/Microsoft/go_winio)) = v0.6.2 +Provides: bundled(golang(github.com/Microsoft/hcsshim)) = v0.13.0 +Provides: bundled(golang(github.com/miekg/pkcs11)) = v1.1.1 +Provides: bundled(golang(github.com/minio/sha256_simd)) = v1.0.1 +Provides: bundled(golang(github.com/mitchellh/go_homedir)) = v1.1.0 +Provides: bundled(golang(github.com/moby/docker_image_spec)) = v1.3.1 +Provides: bundled(golang(github.com/moby/locker)) = v1.0.1 +Provides: bundled(golang(github.com/moby/sys/mountinfo)) = v0.7.2 +Provides: bundled(golang(github.com/moby/sys/mount)) = v0.3.4 +Provides: bundled(golang(github.com/moby/sys/sequential)) = v0.6.0 +Provides: bundled(golang(github.com/moby/sys/signal)) = v0.7.1 +Provides: bundled(golang(github.com/moby/sys/symlink)) = v0.3.0 +Provides: bundled(golang(github.com/moby/sys/userns)) = v0.1.0 +Provides: bundled(golang(github.com/moby/sys/user)) = v0.4.0 +Provides: bundled(golang(github.com/moby/term)) = v0.5.2 +Provides: bundled(golang(github.com/mr_tron/base58)) = v1.2.0 +Provides: bundled(golang(github.com/muesli/cancelreader)) = v0.2.2 +Provides: bundled(golang(github.com/multiformats/go_base32)) = v0.1.0 +Provides: bundled(golang(github.com/multiformats/go_base36)) = v0.2.0 +Provides: bundled(golang(github.com/multiformats/go_multiaddr)) = v0.13.0 +Provides: bundled(golang(github.com/multiformats/go_multibase)) = v0.2.0 +Provides: bundled(golang(github.com/multiformats/go_multihash)) = v0.2.3 +Provides: bundled(golang(github.com/multiformats/go_varint)) = v0.0.7 +Provides: bundled(golang(github.com/opencontainers/go_digest)) = v1.0.0 +Provides: bundled(golang(github.com/opencontainers/image_spec)) = v1.1.1 +Provides: bundled(golang(github.com/opencontainers/runtime_spec)) = v1.2.1 +Provides: bundled(golang(github.com/opencontainers/runtime_tools)) = v0.9.1_0.20221107090550_2e043c6bd626 +Provides: bundled(golang(github.com/opencontainers/selinux)) = v1.12.0 +Provides: bundled(golang(github.com/pelletier/go_toml/v2)) = v2.2.4 +Provides: bundled(golang(github.com/petermattis/goid)) = v0.0.0_20240813172612_4fcff4a6cae7 +Provides: bundled(golang(github.com/philhofer/fwd)) = v1.1.3_0.20240916144458_20a13a1f6b7c +Provides: bundled(golang(github.com/pkg/errors)) = v0.9.1 +Provides: bundled(golang(github.com/rootless_containers/bypass4netns)) = v0.4.2 +Provides: bundled(golang(github.com/rootless_containers/rootlesskit/v2)) = v2.3.5 +Provides: bundled(golang(github.com/sasha_s/go_deadlock)) = v0.3.5 +Provides: bundled(golang(github.com/sirupsen/logrus)) = v1.9.3 +Provides: bundled(golang(github.com/smallstep/pkcs7)) = v0.1.1 +Provides: bundled(golang(github.com/spaolacci/murmur3)) = v1.1.0 +Provides: bundled(golang(github.com/spf13/cobra)) = v1.9.1 +Provides: bundled(golang(github.com/spf13/pflag)) = v1.0.6 +Provides: bundled(golang(github.com/stefanberger/go_pkcs11uri)) = v0.0.0_20230803200340_78284954bff6 +Provides: bundled(golang(github.com/syndtr/gocapability)) = v0.0.0_20200815063812_42c35b437635 +Provides: bundled(golang(github.com/tinylib/msgp)) = v1.3.0 +Provides: bundled(golang(github.com/vbatts/tar_split)) = v0.11.6 +Provides: bundled(golang(github.com/vishvananda/netlink)) = v1.3.1 +Provides: bundled(golang(github.com/vishvananda/netns)) = v0.0.5 +Provides: bundled(golang(github.com/xeipuuv/gojsonpointer)) = v0.0.0_20190905194746_02993c407bfb +Provides: bundled(golang(github.com/xeipuuv/gojsonreference)) = v0.0.0_20180127040603_bd5ef7bd5415 +Provides: bundled(golang(github.com/xeipuuv/gojsonschema)) = v1.2.0 +Provides: bundled(golang(github.com/xhit/go_str2duration/v2)) = v2.1.0 +Provides: bundled(golang(github.com/yuchanns/srslog)) = v1.1.0 +Provides: bundled(golang(lukechampine.com/blake3)) = v1.3.0 +Provides: bundled(golang(sigs.k8s.io/yaml)) = v1.4.0 +Provides: bundled(golang(tags.cncf.io/container_device_interface/specs_go)) = v1.0.0 +Provides: bundled(golang(tags.cncf.io/container_device_interface)) = v1.0.1 + +# for images building +Recommends: buildkit + +# net plugins for nerdctl run with net config +Recommends: cni-plugins + +# for rootless +Recommends: rootlesskit +Recommends: slirp4netns + +%description +nerdctl is a Docker-compatible CLI for containerd. It provides a Docker-like +user experience for containerd, allowing users to run containers, build images, +and manage container resources using familiar Docker commands. + +Main features: +- Same UI/UX as docker +- Supports Docker Compose (nerdctl compose up) +- Optional rootless mode support +- Optional lazy-pulling support (Stargz, Nydus, OverlayBD) +- Optional encrypted images support (ocicrypt) +- Optional P2P image distribution (IPFS) +- Optional container image signing and verifying (cosign) + +%prep +%autosetup -n %{name}-%{version} -Sgit + +%build +# overwrite GO_BUILD_LDFLAGS to remove '-s -w' for debuginfo +make GO_BUILD_LDFLAGS="" + +%install +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_docdir}/%{name} +mkdir -p %{buildroot}%{_mandir}/man1 + +install -m 755 _output/nerdctl %{buildroot}%{_bindir}/nerdctl + +install -m 644 README.md %{buildroot}%{_docdir}/%{name}/ +install -m 644 LICENSE %{buildroot}%{_docdir}/%{name}/ +install -m 644 docs/*.md %{buildroot}%{_docdir}/%{name}/ 2>/dev/null || true + +%files +%license LICENSE +%doc README.md +%{_docdir}/%{name} +%{_bindir}/nerdctl + +%changelog +* Thu Jul 3 2025 Shuo Wang - 2.1.2-1 +- initial build diff --git a/sources b/sources new file mode 100644 index 0000000000000000000000000000000000000000..9b25e0a03e4e5215f997af13d22cd010db3f466e --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (2.1.2-vendor.tar.gz) = 9dced77fc80b14784e3fe18018263d5227ac32545786afeb76b2faf580c3f0e1f171e55989b23be40ede79aae37849c7d189550b2fc7ce7055c574b0b5e9feda