Merge pull request #13762 from sharifelgamal/iso-arm64
Add support for building aarch64 ISOpull/14130/head
commit
acb03c4470
|
@ -26,14 +26,19 @@ _testmain.go
|
|||
*.test
|
||||
*.prof
|
||||
|
||||
/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause
|
||||
/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/usr/bin/auto-pause
|
||||
/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/usr/bin/auto-pause
|
||||
/deploy/iso/minikube-iso/Config.in
|
||||
/deploy/kicbase/auto-pause
|
||||
/deploy/addons/auto-pause/auto-pause-hook
|
||||
/out
|
||||
/_gopath
|
||||
|
||||
#iso version file
|
||||
deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/VERSION
|
||||
deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/VERSION
|
||||
deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/VERSION
|
||||
deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/CHANGELOG
|
||||
deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/CHANGELOG
|
||||
|
||||
/minikube
|
||||
|
||||
|
|
53
Makefile
53
Makefile
|
@ -23,7 +23,7 @@ KUBERNETES_VERSION ?= $(shell egrep "DefaultKubernetesVersion =" pkg/minikube/co
|
|||
KIC_VERSION ?= $(shell egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f2)
|
||||
|
||||
# Default to .0 for higher cache hit rates, as build increments typically don't require new ISO versions
|
||||
ISO_VERSION ?= v1.25.2-1650391217-13814
|
||||
ISO_VERSION ?= v1.25.2-1651892774-13762
|
||||
# Dashes are valid in semver, but not Linux packaging. Use ~ to delimit alpha/beta
|
||||
DEB_VERSION ?= $(subst -,~,$(RAW_VERSION))
|
||||
DEB_REVISION ?= 0
|
||||
|
@ -93,7 +93,7 @@ GOOS ?= $(shell go env GOOS)
|
|||
GOARCH ?= $(shell go env GOARCH)
|
||||
GOARM ?= 7 # the default is 5
|
||||
GOPATH ?= $(shell go env GOPATH)
|
||||
BUILD_DIR ?= ./out
|
||||
BUILD_DIR ?= $(PWD)/out
|
||||
$(shell mkdir -p $(BUILD_DIR))
|
||||
CURRENT_GIT_BRANCH ?= $(shell git branch | grep \* | cut -d ' ' -f2)
|
||||
|
||||
|
@ -282,17 +282,27 @@ out/e2e-%: out/minikube-%
|
|||
out/e2e-windows-amd64.exe: out/e2e-windows-amd64
|
||||
cp $< $@
|
||||
|
||||
minikube_iso: deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause # build minikube iso
|
||||
echo $(ISO_VERSION) > deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/VERSION
|
||||
minikube-iso-amd64: minikube-iso-x86_64
|
||||
minikube-iso-arm64: minikube-iso-aarch64
|
||||
|
||||
minikube-iso-%: deploy/iso/minikube-iso/board/minikube/%/rootfs-overlay/usr/bin/auto-pause # build minikube iso
|
||||
echo $(ISO_VERSION) > deploy/iso/minikube-iso/board/minikube/$*/rootfs-overlay/etc/VERSION
|
||||
cp deploy/iso/minikube-iso/CHANGELOG deploy/iso/minikube-iso/board/minikube/$*/rootfs-overlay/etc/CHANGELOG
|
||||
cp deploy/iso/minikube-iso/arch/$*/Config.in.tmpl deploy/iso/minikube-iso/Config.in
|
||||
if [ ! -d $(BUILD_DIR)/buildroot ]; then \
|
||||
mkdir -p $(BUILD_DIR); \
|
||||
git clone --depth=1 --branch=$(BUILDROOT_BRANCH) https://github.com/buildroot/buildroot $(BUILD_DIR)/buildroot; \
|
||||
cp deploy/iso/minikube-iso/go.hash $(BUILD_DIR)/buildroot/package/go/go.hash; \
|
||||
fi;
|
||||
$(MAKE) BR2_EXTERNAL=../../deploy/iso/minikube-iso minikube_defconfig -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS)
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) host-python
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS)
|
||||
mv $(BUILD_DIR)/buildroot/output/images/rootfs.iso9660 $(BUILD_DIR)/minikube.iso
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* minikube_$*_defconfig
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* host-python
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$*
|
||||
# x86_64 ISO is still BIOS rather than EFI because of AppArmor issues for KVM, and Gen 2 issues for Hyper-V
|
||||
if [ "$*" = "aarch64" ]; then \
|
||||
mv $(BUILD_DIR)/buildroot/output-aarch64/images/boot.iso $(BUILD_DIR)/minikube-arm64.iso; \
|
||||
else \
|
||||
mv $(BUILD_DIR)/buildroot/output-x86_64/images/rootfs.iso9660 $(BUILD_DIR)/minikube-amd64.iso; \
|
||||
fi;
|
||||
|
||||
# Change buildroot configuration for the minikube ISO
|
||||
.PHONY: iso-menuconfig
|
||||
|
@ -301,15 +311,14 @@ iso-menuconfig: ## Configure buildroot configuration
|
|||
$(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) savedefconfig
|
||||
|
||||
# Change the kernel configuration for the minikube ISO
|
||||
.PHONY: linux-menuconfig
|
||||
linux-menuconfig: ## Configure Linux kernel configuration
|
||||
linux-menuconfig-%: ## Configure Linux kernel configuration
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ menuconfig
|
||||
$(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ savedefconfig
|
||||
cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/coreos/minikube/linux_defconfig
|
||||
cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/minikube/$*/linux_$*_defconfig
|
||||
|
||||
out/minikube.iso: $(shell find "deploy/iso/minikube-iso" -type f)
|
||||
out/minikube-%.iso: $(shell find "deploy/iso/minikube-iso" -type f)
|
||||
ifeq ($(IN_DOCKER),1)
|
||||
$(MAKE) minikube_iso
|
||||
$(MAKE) minikube-iso-$*
|
||||
else
|
||||
docker run --rm --workdir /mnt --volume $(CURDIR):/mnt $(ISO_DOCKER_EXTRA_ARGS) \
|
||||
--user $(shell id -u):$(shell id -g) --env HOME=/tmp --env IN_DOCKER=1 \
|
||||
|
@ -321,9 +330,6 @@ iso_in_docker:
|
|||
--user $(shell id -u):$(shell id -g) --env HOME=/tmp --env IN_DOCKER=1 \
|
||||
$(ISO_BUILD_IMAGE) /bin/bash
|
||||
|
||||
test-iso:
|
||||
go test -v $(INTEGRATION_TESTS_TO_RUN) --tags=iso --minikube-start-args="--iso-url=file://$(shell pwd)/out/buildroot/output/images/rootfs.iso9660"
|
||||
|
||||
.PHONY: test-pkg
|
||||
test-pkg/%: ## Trigger packaging test
|
||||
go test -v -test.timeout=60m ./$* --tags="$(MINIKUBE_BUILD_TAGS)"
|
||||
|
@ -436,7 +442,7 @@ e2e-cross: e2e-linux-amd64 e2e-linux-arm64 e2e-darwin-amd64 e2e-windows-amd64.ex
|
|||
|
||||
.PHONY: checksum
|
||||
checksum: ## Generate checksums
|
||||
for f in out/minikube.iso out/minikube-linux-amd64 out/minikube-linux-arm \
|
||||
for f in out/minikube-amd64.iso out/minikube-arm64.iso out/minikube-linux-amd64 out/minikube-linux-arm \
|
||||
out/minikube-linux-arm64 out/minikube-linux-ppc64le out/minikube-linux-s390x \
|
||||
out/minikube-darwin-amd64 out/minikube-darwin-arm64 out/minikube-windows-amd64.exe \
|
||||
out/docker-machine-driver-kvm2 out/docker-machine-driver-kvm2-amd64 out/docker-machine-driver-kvm2-arm64 \
|
||||
|
@ -776,9 +782,11 @@ push-gvisor-addon-image: gvisor-addon-image
|
|||
$(MAKE) push-docker IMAGE=$(REGISTRY)/gvisor-addon:$(GVISOR_TAG)
|
||||
|
||||
.PHONY: release-iso
|
||||
release-iso: minikube_iso checksum ## Build and release .iso file
|
||||
gsutil cp out/minikube.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION).iso
|
||||
gsutil cp out/minikube.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION).iso.sha256
|
||||
release-iso: minikube-iso-aarch64 minikube-iso-x86_64 checksum ## Build and release .iso files
|
||||
gsutil cp out/minikube-amd64.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-amd64.iso
|
||||
gsutil cp out/minikube-amd64.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-amd64.iso.sha256
|
||||
gsutil cp out/minikube-arm64.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-arm64.iso
|
||||
gsutil cp out/minikube-arm64.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-arm64.iso.sha256
|
||||
|
||||
.PHONY: release-minikube
|
||||
release-minikube: out/minikube checksum ## Minikube release
|
||||
|
@ -918,8 +926,9 @@ out/mkcmp:
|
|||
|
||||
|
||||
# auto pause binary to be used for ISO
|
||||
deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause: $(SOURCE_FILES) $(ASSET_FILES)
|
||||
GOOS=linux GOARCH=$(GOARCH) go build -o $@ cmd/auto-pause/auto-pause.go
|
||||
deploy/iso/minikube-iso/board/minikube/%/rootfs-overlay/usr/bin/auto-pause: $(SOURCE_FILES) $(ASSET_FILES)
|
||||
@if [ "$*" != "x86_64" ] && [ "$*" != "aarch64" ]; then echo "Please enter a valid architecture. Choices are x86_64 and aarch64."; exit 1; fi
|
||||
GOOS=linux GOARCH=$(subst x86_64,amd64,$(subst aarch64,arm64,$*)) go build -o $@ cmd/auto-pause/auto-pause.go
|
||||
|
||||
|
||||
.PHONY: deploy/addons/auto-pause/auto-pause-hook
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in"
|
|
@ -0,0 +1,2 @@
|
|||
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/Config.in"
|
|
@ -0,0 +1,12 @@
|
|||
menu "System tools aarch64"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/buildkit-bin-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/runc-master-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/crio-bin-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/crictl-bin-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/docker-bin-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cri-dockerd-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cni-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cni-plugins-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/containerd-bin-aarch64/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/podman-aarch64/Config.in"
|
||||
endmenu
|
|
@ -0,0 +1,4 @@
|
|||
config BR2_PACKAGE_BUILDKIT_BIN_AARCH64
|
||||
bool "buildkit-bin"
|
||||
default y
|
||||
depends on BR2_aarch64
|
|
@ -0,0 +1 @@
|
|||
sha256 0a834a749e86525e0eb16e7e80ce726e7c6a8e8d26fc5cc36c712305024da4e7 buildkit-v0.9.0.linux-arm64.tar.gz
|
|
@ -0,0 +1,52 @@
|
|||
################################################################################
|
||||
#
|
||||
# buildkit-bin
|
||||
#
|
||||
################################################################################
|
||||
|
||||
BUILDKIT_BIN_AARCH64_VERSION = v0.9.0
|
||||
BUILDKIT_BIN_AARCH64_COMMIT = c8bb937807d405d92be91f06ce2629e6202ac7a9
|
||||
BUILDKIT_BIN_AARCH64_SITE = https://github.com/moby/buildkit/releases/download/$(BUILDKIT_BIN_AARCH64_VERSION)
|
||||
BUILDKIT_BIN_AARCH64_SOURCE = buildkit-$(BUILDKIT_BIN_AARCH64_VERSION).linux-arm64.tar.gz
|
||||
|
||||
# https://github.com/opencontainers/runc.git
|
||||
BUILDKIT_RUNC_VERSION = 12644e614e25b05da6fd08a38ffa0cfe1903fdec
|
||||
|
||||
define BUILDKIT_BIN_AARCH64_USERS
|
||||
- -1 buildkit -1 - - - - -
|
||||
endef
|
||||
|
||||
define BUILDKIT_BIN_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/buildctl \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/buildkit-runc \
|
||||
$(TARGET_DIR)/usr/sbin
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/buildkit-qemu-* \
|
||||
$(TARGET_DIR)/usr/sbin
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/buildkitd \
|
||||
$(TARGET_DIR)/usr/sbin
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.conf \
|
||||
$(TARGET_DIR)/usr/lib/tmpfiles.d/buildkit.conf
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkitd.toml \
|
||||
$(TARGET_DIR)/etc/buildkit/buildkitd.toml
|
||||
endef
|
||||
|
||||
define BUILDKIT_BIN_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/buildkit.service
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.socket \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/buildkit.socket
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(BUILDKIT_BIN_AARCH64_PKGDIR)/51-buildkit.preset \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system-preset/51-buildkit.preset
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,5 @@
|
|||
config BR2_PACKAGE_CNI_AARCH64
|
||||
bool "cni"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
|
@ -0,0 +1,45 @@
|
|||
################################################################################
|
||||
#
|
||||
# cni
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CNI_AARCH64_VERSION = v0.7.1
|
||||
CNI_AARCH64_SITE = https://github.com/containernetworking/cni/archive
|
||||
CNI_AARCH64_SOURCE = $(CNI_AARCH64_VERSION).tar.gz
|
||||
CNI_AARCH64_LICENSE = Apache-2.0
|
||||
CNI_AARCH64_LICENSE_FILES = LICENSE
|
||||
|
||||
CNI_AARCH64_DEPENDENCIES = host-go
|
||||
|
||||
CNI_AARCH64_GOPATH = $(@D)/_output
|
||||
CNI_AARCH64_MAKE_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=0 \
|
||||
GO111MODULE=off \
|
||||
GOPATH="$(CNI_AARCH64_GOPATH)" \
|
||||
PATH=$(CNI_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
CNI_AARCH64_BUILDFLAGS = -a --ldflags '-extldflags \"-static\"'
|
||||
|
||||
define CNI_AARCH64_CONFIGURE_CMDS
|
||||
mkdir -p $(CNI_AARCH64_GOPATH)/src/github.com/containernetworking
|
||||
ln -sf $(@D) $(CNI_AARCH64_GOPATH)/src/github.com/containernetworking/cni
|
||||
endef
|
||||
|
||||
define CNI_AARCH64_BUILD_CMDS
|
||||
(cd $(@D); $(CNI_AARCH64_MAKE_ENV) go build -o bin/cnitool $(CNI_AARCH64_BUILDFLAGS) ./cnitool)
|
||||
endef
|
||||
|
||||
define CNI_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/cnitool \
|
||||
$(TARGET_DIR)/opt/cni/bin/cnitool
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/cnitool \
|
||||
$(TARGET_DIR)/usr/bin/cnitool
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,5 @@
|
|||
config BR2_PACKAGE_CNI_PLUGINS_AARCH64
|
||||
bool "cni-plugins"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
|
@ -0,0 +1 @@
|
|||
sha256 a7881ec37e592c897bdfd2a225b4ed74caa981e3c4cdcf8f45574f8d2f111bce cni-plugins-linux-arm64-v0.8.5.tgz
|
|
@ -0,0 +1,120 @@
|
|||
################################################################################
|
||||
#
|
||||
# cni-plugins
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CNI_PLUGINS_AARCH64_VERSION = v0.8.5
|
||||
CNI_PLUGINS_AARCH64_SITE = https://github.com/containernetworking/plugins/releases/download/$(CNI_PLUGINS_AARCH64_VERSION)
|
||||
CNI_PLUGINS_AARCH64_SOURCE = cni-plugins-linux-arm64-$(CNI_PLUGINS_AARCH64_VERSION).tgz
|
||||
CNI_PLUGINS_AARCH64_LICENSE = Apache-2.0
|
||||
CNI_PLUGINS_AARCH64_LICENSE_FILES = LICENSE
|
||||
|
||||
define CNI_PLUGINS_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bandwidth \
|
||||
$(TARGET_DIR)/opt/cni/bin/bandwidth
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/bandwidth \
|
||||
$(TARGET_DIR)/usr/bin/bandwidth
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bridge \
|
||||
$(TARGET_DIR)/opt/cni/bin/bridge
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/bridge \
|
||||
$(TARGET_DIR)/usr/bin/bridge
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/vlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/vlan
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/vlan \
|
||||
$(TARGET_DIR)/usr/bin/vlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/tuning \
|
||||
$(TARGET_DIR)/opt/cni/bin/tuning
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/tuning \
|
||||
$(TARGET_DIR)/usr/bin/tuning
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/ptp \
|
||||
$(TARGET_DIR)/opt/cni/bin/ptp
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/ptp \
|
||||
$(TARGET_DIR)/usr/bin/ptp
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/portmap \
|
||||
$(TARGET_DIR)/opt/cni/bin/portmap
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/portmap \
|
||||
$(TARGET_DIR)/usr/bin/portmap
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/macvlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/macvlan
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/macvlan \
|
||||
$(TARGET_DIR)/usr/bin/macvlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/loopback \
|
||||
$(TARGET_DIR)/opt/cni/bin/loopback
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/loopback \
|
||||
$(TARGET_DIR)/usr/bin/loopback
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/ipvlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/ipvlan
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/ipvlan \
|
||||
$(TARGET_DIR)/usr/bin/ipvlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/host-local \
|
||||
$(TARGET_DIR)/opt/cni/bin/host-local
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/host-local \
|
||||
$(TARGET_DIR)/usr/bin/host-local
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/flannel \
|
||||
$(TARGET_DIR)/opt/cni/bin/flannel
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/flannel \
|
||||
$(TARGET_DIR)/usr/bin/flannel
|
||||
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/dhcp \
|
||||
$(TARGET_DIR)/opt/cni/bin/dhcp
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/dhcp \
|
||||
$(TARGET_DIR)/usr/bin/dhcp
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/firewall \
|
||||
$(TARGET_DIR)/opt/cni/bin/firewall
|
||||
|
||||
ln -sf \
|
||||
../../opt/cni/bin/firewall \
|
||||
$(TARGET_DIR)/usr/bin/firewall
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,18 @@
|
|||
config BR2_PACKAGE_CONTAINERD_BIN_AARCH64
|
||||
bool "containerd-bin"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_USE_MMU # lvm2
|
||||
depends on !BR2_STATIC_LIBS # lvm2
|
||||
depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
|
||||
select BR2_PACKAGE_RUNC_MASTER
|
||||
select BR2_PACKAGE_BTRFS_PROGS
|
||||
select BR2_PACKAGE_LIBSECCOMP
|
||||
select BR2_PACKAGE_LIBGPGME
|
||||
select BR2_PACKAGE_LVM2
|
||||
select BR2_PACKAGE_LVM2_APP_LIBRARY
|
||||
select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
|
||||
select BR2_PACKAGE_LIBGLIB2
|
|
@ -0,0 +1,66 @@
|
|||
################################################################################
|
||||
#
|
||||
# containerd
|
||||
#
|
||||
################################################################################
|
||||
CONTAINERD_BIN_AARCH64_VERSION = v1.5.11
|
||||
CONTAINERD_BIN_AARCH64_COMMIT = 3df54a852345ae127d1fa3092b95168e4a88e2f8
|
||||
CONTAINERD_BIN_AARCH64_SITE = https://github.com/containerd/containerd/archive
|
||||
CONTAINERD_BIN_AARCH64_SOURCE = $(CONTAINERD_BIN_AARCH64_VERSION).tar.gz
|
||||
CONTAINERD_BIN_AARCH64_DEPENDENCIES = host-go libgpgme
|
||||
CONTAINERD_BIN_AARCH64_GOPATH = $(@D)/_output
|
||||
CONTAINERD_BIN_AARCH64_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=1 \
|
||||
GO111MODULE=off \
|
||||
GOPATH="$(CONTAINERD_BIN_AARCH64_GOPATH)" \
|
||||
PATH=$(CONTAINERD_BIN_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
CONTAINERD_BIN_AARCH64_COMPILE_SRC = $(CONTAINERD_BIN_AARCH64_GOPATH)/src/github.com/containerd/containerd
|
||||
|
||||
define CONTAINERD_BIN_AARCH64_USERS
|
||||
- -1 containerd-admin -1 - - - - -
|
||||
- -1 containerd -1 - - - - -
|
||||
endef
|
||||
|
||||
define CONTAINERD_BIN_AARCH64_CONFIGURE_CMDS
|
||||
mkdir -p $(CONTAINERD_BIN_AARCH64_GOPATH)/src/github.com/containerd
|
||||
ln -sf $(@D) $(CONTAINERD_BIN_AARCH64_COMPILE_SRC)
|
||||
endef
|
||||
|
||||
define CONTAINERD_BIN_AARCH64_BUILD_CMDS
|
||||
PWD=$(CONTAINERD_BIN_AARCH64_COMPILE_SRC) $(CONTAINERD_BIN_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) VERSION=$(CONTAINERD_BIN_AARCH64_VERSION) REVISION=$(CONTAINERD_BIN_AARCH64_COMMIT) -C $(@D) binaries
|
||||
endef
|
||||
|
||||
define CONTAINERD_BIN_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/containerd \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/containerd-shim \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/containerd-shim-runc-v1 \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/containerd-shim-runc-v2 \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/ctr \
|
||||
$(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CONTAINERD_BIN_AARCH64_PKGDIR)/config.toml \
|
||||
$(TARGET_DIR)/etc/containerd/config.toml
|
||||
endef
|
||||
|
||||
define CONTAINERD_BIN_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CONTAINERD_BIN_AARCH64_PKGDIR)/containerd.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/containerd.service
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CONTAINERD_BIN_AARCH64_PKGDIR)/50-minikube.preset \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system-preset/50-minikube.preset
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,8 @@
|
|||
config BR2_PACKAGE_CRI_DOCKERD_AARCH64
|
||||
bool "cri-dockerd"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
select BR2_PACKAGE_DOCKER_BIN
|
|
@ -0,0 +1,49 @@
|
|||
################################################################################
|
||||
#
|
||||
# cri-dockerd
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# As of 2022-02-03
|
||||
CRI_DOCKERD_AARCH64_VER = 0.2.0
|
||||
CRI_DOCKERD_AARCH64_REV = a4d1895
|
||||
CRI_DOCKERD_AARCH64_VERSION = a4d1895a2659ea9974bd7528a706592ab8b74181
|
||||
CRI_DOCKERD_AARCH64_SITE = https://github.com/Mirantis/cri-dockerd/archive
|
||||
CRI_DOCKERD_AARCH64_SOURCE = $(CRI_DOCKERD_AARCH64_VERSION).tar.gz
|
||||
|
||||
CRI_DOCKERD_AARCH64_DEPENDENCIES = host-go
|
||||
|
||||
CRI_DOCKERD_AARCH64_GOPATH = $(@D)/_output
|
||||
CRI_DOCKERD_AARCH64_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=0 \
|
||||
GO111MODULE=on \
|
||||
GOPATH="$(CRI_DOCKERD_AARCH64_GOPATH)" \
|
||||
PATH=$(CRI_DOCKERD_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
CRI_DOCKERD_AARCH64_COMPILE_SRC = $(CRI_DOCKERD_AARCH64_GOPATH)/src/github.com/Mirantis/cri-dockerd
|
||||
CRI_DOCKERD_AARCH64_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_AARCH64_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_AARCH64_REV)'"
|
||||
|
||||
# If https://github.com/Mirantis/cri-dockerd/blob/master/packaging/Makefile changes, then this will almost certainly need to change
|
||||
# This uses the static make target at the top level Makefile, since that builds everything, then picks out the arm64 binary
|
||||
define CRI_DOCKERD_AARCH64_BUILD_CMDS
|
||||
$(CRI_DOCKERD_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS=$(CRI_DOCKERD_AARCH64_BUILDFLAGS) GO_VERSION=$(GO_VERSION) -C $(@D) VERSION=$(CRI_DOCKERD_AARCH64_VER) REVISION=$(CRI_DOCKERD_AARCH64_REV) static
|
||||
endef
|
||||
|
||||
define CRI_DOCKERD_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/packaging/static/build/arm/cri-dockerd/cri-dockerd \
|
||||
$(TARGET_DIR)/usr/bin/cri-dockerd
|
||||
endef
|
||||
|
||||
define CRI_DOCKERD_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -Dm644 \
|
||||
$(@D)/packaging/systemd/cri-docker.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/cri-docker.service
|
||||
$(INSTALL) -Dm644 \
|
||||
$(@D)/packaging/systemd/cri-docker.socket \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/cri-docker.socket
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,4 @@
|
|||
config BR2_PACKAGE_CRICTL_BIN_AARCH64
|
||||
bool "crictl-bin"
|
||||
default y
|
||||
depends on BR2_aarch64
|
|
@ -0,0 +1 @@
|
|||
sha256 454eecd29fe636282339af5b73c60234a7d10e4b11b9e18937e33056763d72cf crictl-v1.21.0-linux-arm64.tar.gz
|
|
@ -0,0 +1,18 @@
|
|||
################################################################################
|
||||
#
|
||||
# crictl-bin
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CRICTL_BIN_AARCH64_VERSION = v1.21.0
|
||||
CRICTL_BIN_AARCH64_SITE = https://github.com/kubernetes-sigs/cri-tools/releases/download/$(CRICTL_BIN_AARCH64_VERSION)
|
||||
CRICTL_BIN_AARCH64_SOURCE = crictl-$(CRICTL_BIN_AARCH64_VERSION)-linux-arm64.tar.gz
|
||||
CRICTL_BIN_AARCH64_STRIP_COMPONENTS = 0
|
||||
|
||||
define CRICTL_BIN_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/crictl \
|
||||
$(TARGET_DIR)/usr/bin/crictl
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,20 @@
|
|||
config BR2_PACKAGE_CRIO_BIN_AARCH64
|
||||
bool "crio-bin"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
depends on BR2_USE_MMU # lvm2
|
||||
depends on !BR2_STATIC_LIBS # lvm2
|
||||
depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2
|
||||
select BR2_PACKAGE_RUNC_MASTER
|
||||
select BR2_PACKAGE_CRUN
|
||||
select BR2_PACKAGE_CONMON
|
||||
select BR2_PACKAGE_BTRFS_PROGS
|
||||
select BR2_PACKAGE_LIBSECCOMP
|
||||
select BR2_PACKAGE_LIBGPGME
|
||||
select BR2_PACKAGE_LVM2
|
||||
select BR2_PACKAGE_LVM2_APP_LIBRARY
|
||||
select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
|
||||
select BR2_PACKAGE_LIBGLIB2
|
|
@ -0,0 +1,79 @@
|
|||
################################################################################
|
||||
#
|
||||
# cri-o
|
||||
#
|
||||
################################################################################
|
||||
|
||||
CRIO_BIN_AARCH64_VERSION = v1.22.3
|
||||
CRIO_BIN_AARCH64_COMMIT = d93b2dfb8d0f2ad0f8b9061d941e3b216baa5814
|
||||
CRIO_BIN_AARCH64_SITE = https://github.com/cri-o/cri-o/archive
|
||||
CRIO_BIN_AARCH64_SOURCE = $(CRIO_BIN_AARCH64_VERSION).tar.gz
|
||||
CRIO_BIN_AARCH64_DEPENDENCIES = host-go libgpgme
|
||||
CRIO_BIN_AARCH64_GOPATH = $(@D)/_output
|
||||
CRIO_BIN_AARCH64_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=1 \
|
||||
GO111MODULE=off \
|
||||
GOPATH="$(CRIO_BIN_AARCH64_GOPATH)" \
|
||||
PATH=$(CRIO_BIN_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
|
||||
define CRIO_BIN_AARCH64_USERS
|
||||
- -1 crio-admin -1 - - - - -
|
||||
- -1 crio -1 - - - - -
|
||||
endef
|
||||
|
||||
define CRIO_BIN_AARCH64_CONFIGURE_CMDS
|
||||
mkdir -p $(CRIO_BIN_AARCH64_GOPATH)/src/github.com/cri-o
|
||||
ln -sf $(@D) $(CRIO_BIN_AARCH64_GOPATH)/src/github.com/cri-o/cri-o
|
||||
# disable the "automatic" go module detection
|
||||
sed -e 's/go help mod/false/' -i $(@D)/Makefile
|
||||
endef
|
||||
|
||||
define CRIO_BIN_AARCH64_BUILD_CMDS
|
||||
mkdir -p $(@D)/bin
|
||||
$(CRIO_BIN_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) COMMIT_NO=$(CRIO_BIN_AARCH64_COMMIT) PREFIX=/usr binaries
|
||||
endef
|
||||
|
||||
define CRIO_BIN_AARCH64_INSTALL_TARGET_CMDS
|
||||
mkdir -p $(TARGET_DIR)/usr/share/containers/oci/hooks.d
|
||||
mkdir -p $(TARGET_DIR)/etc/containers/oci/hooks.d
|
||||
mkdir -p $(TARGET_DIR)/etc/crio/crio.conf.d
|
||||
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/crio \
|
||||
$(TARGET_DIR)/usr/bin/crio
|
||||
$(INSTALL) -Dm755 \
|
||||
$(@D)/bin/pinns \
|
||||
$(TARGET_DIR)/usr/bin/pinns
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/crio.conf \
|
||||
$(TARGET_DIR)/etc/crio/crio.conf
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/policy.json \
|
||||
$(TARGET_DIR)/etc/containers/policy.json
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/registries.conf \
|
||||
$(TARGET_DIR)/etc/containers/registries.conf
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/02-crio.conf \
|
||||
$(TARGET_DIR)/etc/crio/crio.conf.d/02-crio.conf
|
||||
|
||||
mkdir -p $(TARGET_DIR)/etc/sysconfig
|
||||
echo 'CRIO_OPTIONS="--log-level=debug"' > $(TARGET_DIR)/etc/sysconfig/crio
|
||||
endef
|
||||
|
||||
define CRIO_BIN_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) install.systemd DESTDIR=$(TARGET_DIR) PREFIX=$(TARGET_DIR)/usr
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/crio.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/crio.service
|
||||
$(INSTALL) -Dm644 \
|
||||
$(CRIO_BIN_AARCH64_PKGDIR)/crio-wipe.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/crio-wipe.service
|
||||
$(call link-service,crio.service)
|
||||
$(call link-service,crio-shutdown.service)
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,4 @@
|
|||
config BR2_PACKAGE_DOCKER_BIN_AARCH64
|
||||
bool "docker-bin"
|
||||
default y
|
||||
depends on BR2_aarch64
|
|
@ -0,0 +1 @@
|
|||
sha256 ea971edc1179088bfd25edd04a0c12848143d15cb8202ebb93a6a08973464fd0 docker-20.10.14.tgz
|
|
@ -0,0 +1,55 @@
|
|||
################################################################################
|
||||
#
|
||||
# docker-bin
|
||||
#
|
||||
################################################################################
|
||||
|
||||
DOCKER_BIN_AARCH64_VERSION = 20.10.14
|
||||
DOCKER_BIN_AARCH64_SITE = https://download.docker.com/linux/static/stable/aarch64
|
||||
DOCKER_BIN_AARCH64_SOURCE = docker-$(DOCKER_BIN_AARCH64_VERSION).tgz
|
||||
|
||||
define DOCKER_BIN_AARCH64_USERS
|
||||
- -1 docker -1 - - - - -
|
||||
endef
|
||||
|
||||
define DOCKER_BIN_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/docker \
|
||||
$(TARGET_DIR)/bin/docker
|
||||
|
||||
# As of 2019-05, we use upstream containerd so that we may update it independently of docker.
|
||||
|
||||
# As of 2019-01, we use upstream runc so that we may update it independently of docker.
|
||||
|
||||
# As of 2019-05, we use upstream ctr so that we may update it independently of docker.
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/dockerd \
|
||||
$(TARGET_DIR)/bin/dockerd
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/docker-init \
|
||||
$(TARGET_DIR)/bin/docker-init
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/docker-proxy \
|
||||
$(TARGET_DIR)/bin/docker-proxy
|
||||
|
||||
# https://kubernetes.io/docs/setup/production-environment/container-runtimes/#docker
|
||||
|
||||
$(INSTALL) -Dm644 \
|
||||
$(DOCKER_BIN_AARCH64_PKGDIR)/daemon.json \
|
||||
$(TARGET_DIR)/etc/docker/daemon.json
|
||||
endef
|
||||
|
||||
define DOCKER_BIN_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(DOCKER_BIN_AARCH64_PKGDIR)/docker.socket \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/docker.socket
|
||||
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(DOCKER_BIN_AARCH64_PKGDIR)/forward.conf \
|
||||
$(TARGET_DIR)/etc/sysctl.d/forward.conf
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,12 @@
|
|||
config BR2_PACKAGE_PODMAN_AARCH64
|
||||
bool "podman"
|
||||
default y
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
||||
select BR2_PACKAGE_RUNC_MASTER
|
||||
select BR2_PACKAGE_CRUN
|
||||
select BR2_PACKAGE_CONMON
|
||||
select BR2_PACKAGE_LIBSECCOMP
|
||||
select BR2_PACKAGE_LIBGPGME
|
|
@ -0,0 +1,71 @@
|
|||
PODMAN_AARCH64_VERSION = v3.4.2
|
||||
PODMAN_AARCH64_COMMIT = 2ad1fd3555de12de34e20898cc2ef901f08fe5ed
|
||||
PODMAN_AARCH64_SITE = https://github.com/containers/podman/archive
|
||||
PODMAN_AARCH64_SOURCE = $(PODMAN_AARCH64_VERSION).tar.gz
|
||||
PODMAN_AARCH64_LICENSE = Apache-2.0
|
||||
PODMAN_AARCH64_LICENSE_FILES = LICENSE
|
||||
|
||||
PODMAN_AARCH64_DEPENDENCIES = host-go
|
||||
ifeq ($(BR2_INIT_SYSTEMD),y)
|
||||
# need libsystemd for journal
|
||||
PODMAN_AARCH64_DEPENDENCIES += systemd
|
||||
endif
|
||||
|
||||
PODMAN_AARCH64_GOPATH = $(@D)/_output
|
||||
PODMAN_AARCH64_BIN_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=1 \
|
||||
GOPATH="$(PODMAN_AARCH64_GOPATH)" \
|
||||
PATH=$(PODMAN_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
|
||||
define PODMAN_AARCH64_USERS
|
||||
- -1 podman -1 - - - - -
|
||||
endef
|
||||
|
||||
define PODMAN_AARCH64_MOD_VENDOR_MAKEFILE
|
||||
# "build flag -mod=vendor only valid when using modules"
|
||||
sed -e 's|-mod=vendor ||' -i $(@D)/Makefile
|
||||
endef
|
||||
|
||||
PODMAN_AARCH64_POST_EXTRACT_HOOKS += PODMAN_AARCH64_MOD_VENDOR_MAKEFILE
|
||||
|
||||
define PODMAN_AARCH64_CONFIGURE_CMDS
|
||||
mkdir -p $(PODMAN_AARCH64_GOPATH) && mv $(@D)/vendor $(PODMAN_AARCH64_GOPATH)/src
|
||||
|
||||
mkdir -p $(PODMAN_AARCH64_GOPATH)/src/github.com/containers
|
||||
ln -sf $(@D) $(PODMAN_AARCH64_GOPATH)/src/github.com/containers/podman
|
||||
|
||||
ln -sf $(@D) $(PODMAN_AARCH64_GOPATH)/src/github.com/containers/podman/v2
|
||||
endef
|
||||
|
||||
define PODMAN_AARCH64_BUILD_CMDS
|
||||
mkdir -p $(@D)/bin
|
||||
$(PODMAN_AARCH64_BIN_ENV) CIRRUS_TAG=$(PODMAN_AARCH64_VERSION) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) GIT_COMMIT=$(PODMAN_AARCH64_COMMIT) PREFIX=/usr podman
|
||||
endef
|
||||
|
||||
define PODMAN_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -Dm755 $(@D)/bin/podman $(TARGET_DIR)/usr/bin/podman
|
||||
$(INSTALL) -d -m 755 $(TARGET_DIR)/etc/cni/net.d/
|
||||
$(INSTALL) -m 644 $(@D)/cni/87-podman-bridge.conflist $(TARGET_DIR)/etc/cni/net.d/87-podman-bridge.conflist
|
||||
endef
|
||||
|
||||
define PODMAN_AARCH64_INSTALL_INIT_SYSTEMD
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(@D)/contrib/systemd/system/podman.service \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/podman.service
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(@D)/contrib/systemd/system/podman.socket \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/podman.socket
|
||||
|
||||
# Allow running podman-remote as a user in the group "podman"
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(PODMAN_AARCH64_PKGDIR)/override.conf \
|
||||
$(TARGET_DIR)/usr/lib/systemd/system/podman.socket.d/override.conf
|
||||
$(INSTALL) -D -m 644 \
|
||||
$(PODMAN_AARCH64_PKGDIR)/podman.conf \
|
||||
$(TARGET_DIR)/usr/lib/tmpfiles.d/podman.conf
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -1,5 +1,6 @@
|
|||
config BR2_PACKAGE_RUNC_MASTER
|
||||
config BR2_PACKAGE_RUNC_MASTER_AARCH64
|
||||
bool "runc-master"
|
||||
default y
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
@ -0,0 +1,45 @@
|
|||
################################################################################
|
||||
#
|
||||
# runc
|
||||
#
|
||||
################################################################################
|
||||
|
||||
# As of 2021-12-03, v1.0.3
|
||||
RUNC_MASTER_AARCH64_VERSION = f46b6ba2c9314cfc8caae24a32ec5fe9ef1059fe
|
||||
RUNC_MASTER_AARCH64_SITE = https://github.com/opencontainers/runc/archive
|
||||
RUNC_MASTER_AARCH64_SOURCE = $(RUNC_MASTER_AARCH64_VERSION).tar.gz
|
||||
RUNC_MASTER_AARCH64_LICENSE = Apache-2.0
|
||||
RUNC_MASTER_AARCH64_LICENSE_FILES = LICENSE
|
||||
|
||||
RUNC_MASTER_AARCH64_DEPENDENCIES = host-go
|
||||
|
||||
RUNC_MASTER_AARCH64_GOPATH = $(@D)/_output
|
||||
RUNC_MASTER_AARCH64_MAKE_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=1 \
|
||||
GO111MODULE=off \
|
||||
GOPATH="$(RUNC_MASTER_AARCH64_GOPATH)" \
|
||||
PATH=$(RUNC_MASTER_AARCH64_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=arm64
|
||||
|
||||
RUNC_MASTER_AARCH64_COMPILE_SRC = $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers/runc
|
||||
|
||||
ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
|
||||
RUNC_MASTER_AARCH64_GOTAGS += seccomp
|
||||
RUNC_MASTER_AARCH64_DEPENDENCIES += libseccomp host-pkgconf
|
||||
endif
|
||||
|
||||
define RUNC_MASTER_AARCH64_CONFIGURE_CMDS
|
||||
mkdir -p $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers
|
||||
ln -s $(@D) $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers/runc
|
||||
endef
|
||||
|
||||
define RUNC_MASTER_AARCH64_BUILD_CMDS
|
||||
PWD=$(RUNC_MASTER_AARCH64_COMPILE_SRC) $(RUNC_MASTER_AARCH64_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) BUILDTAGS="$(RUNC_MASTER_AARCH64_GOTAGS)" COMMIT_NO=$(RUNC_MASTER_AARCH64_VERSION) COMMIT=$(RUNC_MASTER_AARCH64_VERSION) PREFIX=/usr
|
||||
endef
|
||||
|
||||
define RUNC_MASTER_AARCH64_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 $(@D)/runc $(TARGET_DIR)/usr/bin/runc
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -0,0 +1,2 @@
|
|||
source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/Config.in"
|
|
@ -0,0 +1,15 @@
|
|||
menu "System tools x86_64"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/conmon/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/buildkit-bin/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/runc-master/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/crio-bin/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/crictl-bin/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/docker-bin/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cri-dockerd/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cni/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cni-plugins/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/containerd-bin/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/podman/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/vbox-guest/Config.in"
|
||||
source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/hyperv-daemons/Config.in"
|
||||
endmenu
|
|
@ -0,0 +1 @@
|
|||
disable buildkit.service
|
|
@ -0,0 +1 @@
|
|||
d /run/buildkit 0770 root buildkit
|
|
@ -0,0 +1,11 @@
|
|||
[Unit]
|
||||
Description=BuildKit
|
||||
Requires=buildkit.socket
|
||||
After=buildkit.socket
|
||||
Documentation=https://github.com/moby/buildkit
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/buildkitd --addr fd://
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,12 @@
|
|||
[Unit]
|
||||
Description=BuildKit
|
||||
Documentation=https://github.com/moby/buildkit
|
||||
|
||||
[Socket]
|
||||
ListenStream=%t/buildkit/buildkitd.sock
|
||||
SocketMode=0660
|
||||
SocketUser=root
|
||||
SocketGroup=buildkit
|
||||
|
||||
[Install]
|
||||
WantedBy=sockets.target
|
|
@ -0,0 +1,5 @@
|
|||
[worker.oci]
|
||||
enabled = false
|
||||
[worker.containerd]
|
||||
enabled = true
|
||||
namespace = "k8s.io"
|
|
@ -2,3 +2,4 @@ sha256 f04339a21b8edf76d415e7f17b620e63b8f37a76b2f706671587ab6464411f2d cni-plu
|
|||
sha256 8589670f7f9b211a351dfcd211d4fe0b961d77283a7415443dc188f3dbf05668 v0.6.0.tar.gz
|
||||
sha256 92c7599918be0a720ac020f137cdeac746dfa03da6b26e08a37132c5728c091f v0.7.5.tar.gz
|
||||
sha256 9d1526ed965ac6562fd95a931ab2346b3c5efd58c2f569038ba3c530f7e66472 v0.8.5.tar.gz
|
||||
sha256 bd682ffcf701e8f83283cdff7281aad0c83b02a56084d6e601216210732833f9 cni-plugins-linux-amd64-v0.8.5.tgz
|
|
@ -5,28 +5,14 @@
|
|||
################################################################################
|
||||
|
||||
CNI_PLUGINS_VERSION = v0.8.5
|
||||
CNI_PLUGINS_SITE = https://github.com/containernetworking/plugins/archive
|
||||
CNI_PLUGINS_SOURCE = $(CNI_PLUGINS_VERSION).tar.gz
|
||||
CNI_PLUGINS_SITE = https://github.com/containernetworking/plugins/releases/download/$(CNI_PLUGINS_VERSION)
|
||||
CNI_PLUGINS_SOURCE = cni-plugins-linux-amd64-$(CNI_PLUGINS_VERSION).tgz
|
||||
CNI_PLUGINS_LICENSE = Apache-2.0
|
||||
CNI_PLUGINS_LICENSE_FILES = LICENSE
|
||||
|
||||
CNI_PLUGINS_DEPENDENCIES = host-go
|
||||
|
||||
CNI_PLUGINS_MAKE_ENV = \
|
||||
$(GO_TARGET_ENV) \
|
||||
CGO_ENABLED=0 \
|
||||
GO111MODULE=off
|
||||
|
||||
CNI_PLUGINS_BUILDFLAGS = -a -ldflags '-extldflags -static -X github.com/containernetworking/plugins/pkg/utils/buildversion.BuildVersion=$(CNI_PLUGINS_VERSION)'
|
||||
|
||||
|
||||
define CNI_PLUGINS_BUILD_CMDS
|
||||
(cd $(@D); $(CNI_PLUGINS_MAKE_ENV) ./build_linux.sh $(CNI_PLUGINS_BUILDFLAGS))
|
||||
endef
|
||||
|
||||
define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/bandwidth \
|
||||
$(@D)/bandwidth \
|
||||
$(TARGET_DIR)/opt/cni/bin/bandwidth
|
||||
|
||||
ln -sf \
|
||||
|
@ -34,7 +20,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/bandwidth
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/bridge \
|
||||
$(@D)/bridge \
|
||||
$(TARGET_DIR)/opt/cni/bin/bridge
|
||||
|
||||
ln -sf \
|
||||
|
@ -42,7 +28,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/bridge
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/vlan \
|
||||
$(@D)/vlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/vlan
|
||||
|
||||
ln -sf \
|
||||
|
@ -50,7 +36,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/vlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/tuning \
|
||||
$(@D)/tuning \
|
||||
$(TARGET_DIR)/opt/cni/bin/tuning
|
||||
|
||||
ln -sf \
|
||||
|
@ -58,7 +44,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/tuning
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/ptp \
|
||||
$(@D)/ptp \
|
||||
$(TARGET_DIR)/opt/cni/bin/ptp
|
||||
|
||||
ln -sf \
|
||||
|
@ -66,7 +52,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/ptp
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/portmap \
|
||||
$(@D)/portmap \
|
||||
$(TARGET_DIR)/opt/cni/bin/portmap
|
||||
|
||||
ln -sf \
|
||||
|
@ -74,7 +60,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/portmap
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/macvlan \
|
||||
$(@D)/macvlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/macvlan
|
||||
|
||||
ln -sf \
|
||||
|
@ -82,7 +68,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/macvlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/loopback \
|
||||
$(@D)/loopback \
|
||||
$(TARGET_DIR)/opt/cni/bin/loopback
|
||||
|
||||
ln -sf \
|
||||
|
@ -90,7 +76,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/loopback
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/ipvlan \
|
||||
$(@D)/ipvlan \
|
||||
$(TARGET_DIR)/opt/cni/bin/ipvlan
|
||||
|
||||
ln -sf \
|
||||
|
@ -98,7 +84,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/ipvlan
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/host-local \
|
||||
$(@D)/host-local \
|
||||
$(TARGET_DIR)/opt/cni/bin/host-local
|
||||
|
||||
ln -sf \
|
||||
|
@ -106,7 +92,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/host-local
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/flannel \
|
||||
$(@D)/flannel \
|
||||
$(TARGET_DIR)/opt/cni/bin/flannel
|
||||
|
||||
ln -sf \
|
||||
|
@ -115,7 +101,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/dhcp \
|
||||
$(@D)/dhcp \
|
||||
$(TARGET_DIR)/opt/cni/bin/dhcp
|
||||
|
||||
ln -sf \
|
||||
|
@ -123,7 +109,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS
|
|||
$(TARGET_DIR)/usr/bin/dhcp
|
||||
|
||||
$(INSTALL) -D -m 0755 \
|
||||
$(@D)/bin/firewall \
|
||||
$(@D)/firewall \
|
||||
$(TARGET_DIR)/opt/cni/bin/firewall
|
||||
|
||||
ln -sf \
|
|
@ -0,0 +1,6 @@
|
|||
sha256 b1ae09833a238c51161918a8849031efdb46cf0068ea5b752e362d9836e2af7d cni-v0.3.0.tgz
|
||||
sha256 84c9a0a41b59211d560bef14bf3f53bb370156f9ac7762270b3848fed96e1be8 cni-v0.4.0.tgz
|
||||
sha256 a7f84a742c8f3a95843b3cc636444742554a4853835649ec371a07c841daebab cni-amd64-v0.6.0.tgz
|
||||
sha256 802f4a002b4eb774624a9dc1c859d3c9926eb2d862e66a673fc99cfc8bcd7494 v0.6.0.tar.gz
|
||||
sha256 78d57477d6b0ab9dc4d75ce9f275302d2f379206b5326503e57d9c08b76484c1 v0.7.0.tar.gz
|
||||
sha256 4517eabfd65aea2012dc48d057bf889a0a41ed9837387d95cd1e36c0dbddcfd4 v0.7.1.tar.gz
|
|
@ -19,7 +19,8 @@ CNI_MAKE_ENV = \
|
|||
GO111MODULE=off \
|
||||
GOPATH="$(CNI_GOPATH)" \
|
||||
GOBIN="$(CNI_GOPATH)/bin" \
|
||||
PATH=$(CNI_GOPATH)/bin:$(BR_PATH)
|
||||
PATH=$(CNI_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=amd64
|
||||
|
||||
CNI_BUILDFLAGS = -a --ldflags '-extldflags \"-static\"'
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
config BR2_PACKAGE_CONMON
|
||||
bool "conmon"
|
||||
depends on BR2_x86_64
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
|
||||
depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
|
||||
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
@ -0,0 +1 @@
|
|||
disable containerd.service
|
|
@ -0,0 +1,133 @@
|
|||
version = 2
|
||||
root = "/var/lib/containerd"
|
||||
state = "/run/containerd"
|
||||
plugin_dir = ""
|
||||
disabled_plugins = []
|
||||
required_plugins = []
|
||||
oom_score = 0
|
||||
|
||||
[grpc]
|
||||
address = "/run/containerd/containerd.sock"
|
||||
tcp_address = ""
|
||||
tcp_tls_cert = ""
|
||||
tcp_tls_key = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
max_recv_message_size = 16777216
|
||||
max_send_message_size = 16777216
|
||||
|
||||
[ttrpc]
|
||||
address = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
|
||||
[debug]
|
||||
address = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
level = ""
|
||||
|
||||
[metrics]
|
||||
address = ""
|
||||
grpc_histogram = false
|
||||
|
||||
[cgroup]
|
||||
path = ""
|
||||
|
||||
[timeouts]
|
||||
"io.containerd.timeout.shim.cleanup" = "5s"
|
||||
"io.containerd.timeout.shim.load" = "5s"
|
||||
"io.containerd.timeout.shim.shutdown" = "3s"
|
||||
"io.containerd.timeout.task.state" = "2s"
|
||||
|
||||
[plugins]
|
||||
[plugins."io.containerd.gc.v1.scheduler"]
|
||||
pause_threshold = 0.02
|
||||
deletion_threshold = 0
|
||||
mutation_threshold = 100
|
||||
schedule_delay = "0s"
|
||||
startup_delay = "100ms"
|
||||
[plugins."io.containerd.grpc.v1.cri"]
|
||||
disable_tcp_service = true
|
||||
stream_server_address = ""
|
||||
stream_server_port = "10010"
|
||||
stream_idle_timeout = "4h0m0s"
|
||||
enable_selinux = false
|
||||
selinux_category_range = 1024
|
||||
sandbox_image = "k8s.gcr.io/pause:3.2"
|
||||
stats_collect_period = 10
|
||||
systemd_cgroup = true
|
||||
enable_tls_streaming = false
|
||||
max_container_log_line_size = 16384
|
||||
disable_cgroup = false
|
||||
disable_apparmor = false
|
||||
restrict_oom_score_adj = false
|
||||
max_concurrent_downloads = 3
|
||||
disable_proc_mount = false
|
||||
unset_seccomp_profile = ""
|
||||
tolerate_missing_hugetlb_controller = true
|
||||
disable_hugetlb_controller = true
|
||||
ignore_image_defined_volumes = false
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd]
|
||||
snapshotter = "overlayfs"
|
||||
default_runtime_name = "runc"
|
||||
no_pivot = false
|
||||
disable_snapshot_annotations = true
|
||||
discard_unpacked_layers = false
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.default_runtime]
|
||||
runtime_type = ""
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime]
|
||||
runtime_type = ""
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
|
||||
runtime_type = "io.containerd.runc.v2"
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
|
||||
[plugins."io.containerd.grpc.v1.cri".cni]
|
||||
bin_dir = "/opt/cni/bin"
|
||||
conf_dir = "/etc/cni/net.d"
|
||||
max_conf_num = 1
|
||||
conf_template = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".registry]
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
|
||||
endpoint = ["https://registry-1.docker.io"]
|
||||
[plugins."io.containerd.grpc.v1.cri".image_decryption]
|
||||
key_model = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming]
|
||||
tls_cert_file = ""
|
||||
tls_key_file = ""
|
||||
[plugins."io.containerd.internal.v1.opt"]
|
||||
path = "/opt/containerd"
|
||||
[plugins."io.containerd.internal.v1.restart"]
|
||||
interval = "10s"
|
||||
[plugins."io.containerd.metadata.v1.bolt"]
|
||||
content_sharing_policy = "shared"
|
||||
[plugins."io.containerd.monitor.v1.cgroups"]
|
||||
no_prometheus = false
|
||||
[plugins."io.containerd.runtime.v1.linux"]
|
||||
shim = "containerd-shim"
|
||||
runtime = "runc"
|
||||
runtime_root = ""
|
||||
no_shim = false
|
||||
shim_debug = false
|
||||
[plugins."io.containerd.runtime.v2.task"]
|
||||
platforms = ["linux/amd64"]
|
||||
[plugins."io.containerd.service.v1.diff-service"]
|
||||
default = ["walking"]
|
||||
[plugins."io.containerd.snapshotter.v1.devmapper"]
|
||||
root_path = ""
|
||||
pool_name = ""
|
||||
base_image_size = ""
|
||||
async_remove = false
|
|
@ -0,0 +1,133 @@
|
|||
version = 2
|
||||
root = "/var/lib/containerd"
|
||||
state = "/run/containerd"
|
||||
plugin_dir = ""
|
||||
disabled_plugins = []
|
||||
required_plugins = []
|
||||
oom_score = 0
|
||||
|
||||
[grpc]
|
||||
address = "/run/containerd/containerd.sock"
|
||||
tcp_address = ""
|
||||
tcp_tls_cert = ""
|
||||
tcp_tls_key = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
max_recv_message_size = 16777216
|
||||
max_send_message_size = 16777216
|
||||
|
||||
[ttrpc]
|
||||
address = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
|
||||
[debug]
|
||||
address = ""
|
||||
uid = 0
|
||||
gid = 0
|
||||
level = ""
|
||||
|
||||
[metrics]
|
||||
address = ""
|
||||
grpc_histogram = false
|
||||
|
||||
[cgroup]
|
||||
path = ""
|
||||
|
||||
[timeouts]
|
||||
"io.containerd.timeout.shim.cleanup" = "5s"
|
||||
"io.containerd.timeout.shim.load" = "5s"
|
||||
"io.containerd.timeout.shim.shutdown" = "3s"
|
||||
"io.containerd.timeout.task.state" = "2s"
|
||||
|
||||
[plugins]
|
||||
[plugins."io.containerd.gc.v1.scheduler"]
|
||||
pause_threshold = 0.02
|
||||
deletion_threshold = 0
|
||||
mutation_threshold = 100
|
||||
schedule_delay = "0s"
|
||||
startup_delay = "100ms"
|
||||
[plugins."io.containerd.grpc.v1.cri"]
|
||||
disable_tcp_service = true
|
||||
stream_server_address = "127.0.0.1"
|
||||
stream_server_port = "0"
|
||||
stream_idle_timeout = "4h0m0s"
|
||||
enable_selinux = false
|
||||
selinux_category_range = 1024
|
||||
sandbox_image = "k8s.gcr.io/pause:3.2"
|
||||
stats_collect_period = 10
|
||||
systemd_cgroup = false
|
||||
enable_tls_streaming = false
|
||||
max_container_log_line_size = 16384
|
||||
disable_cgroup = false
|
||||
disable_apparmor = false
|
||||
restrict_oom_score_adj = false
|
||||
max_concurrent_downloads = 3
|
||||
disable_proc_mount = false
|
||||
unset_seccomp_profile = ""
|
||||
tolerate_missing_hugetlb_controller = true
|
||||
disable_hugetlb_controller = true
|
||||
ignore_image_defined_volumes = false
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd]
|
||||
snapshotter = "overlayfs"
|
||||
default_runtime_name = "runc"
|
||||
no_pivot = false
|
||||
disable_snapshot_annotations = true
|
||||
discard_unpacked_layers = false
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.default_runtime]
|
||||
runtime_type = ""
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime]
|
||||
runtime_type = ""
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes]
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc]
|
||||
runtime_type = "io.containerd.runc.v2"
|
||||
runtime_engine = ""
|
||||
runtime_root = ""
|
||||
privileged_without_host_devices = false
|
||||
base_runtime_spec = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
|
||||
[plugins."io.containerd.grpc.v1.cri".cni]
|
||||
bin_dir = "/opt/cni/bin"
|
||||
conf_dir = "/etc/cni/net.d"
|
||||
max_conf_num = 1
|
||||
conf_template = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".registry]
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
|
||||
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
|
||||
endpoint = ["https://registry-1.docker.io"]
|
||||
[plugins."io.containerd.grpc.v1.cri".image_decryption]
|
||||
key_model = ""
|
||||
[plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming]
|
||||
tls_cert_file = ""
|
||||
tls_key_file = ""
|
||||
[plugins."io.containerd.internal.v1.opt"]
|
||||
path = "/opt/containerd"
|
||||
[plugins."io.containerd.internal.v1.restart"]
|
||||
interval = "10s"
|
||||
[plugins."io.containerd.metadata.v1.bolt"]
|
||||
content_sharing_policy = "shared"
|
||||
[plugins."io.containerd.monitor.v1.cgroups"]
|
||||
no_prometheus = false
|
||||
[plugins."io.containerd.runtime.v1.linux"]
|
||||
shim = "containerd-shim"
|
||||
runtime = "runc"
|
||||
runtime_root = ""
|
||||
no_shim = false
|
||||
shim_debug = false
|
||||
[plugins."io.containerd.runtime.v2.task"]
|
||||
platforms = ["linux/amd64"]
|
||||
[plugins."io.containerd.service.v1.diff-service"]
|
||||
default = ["walking"]
|
||||
[plugins."io.containerd.snapshotter.v1.devmapper"]
|
||||
root_path = ""
|
||||
pool_name = ""
|
||||
base_image_size = ""
|
||||
async_remove = false
|
|
@ -0,0 +1,16 @@
|
|||
sha256 8565a655345f3db2f7b78b77a2cd3103895229aa44cd0e4c710ba3559e344b5a v1.2.0.tar.gz
|
||||
sha256 b92819bde71de947329814a3c649b8adb106cc03be16aae217b94297f4b843a1 v1.2.5.tar.gz
|
||||
sha256 f2d578b743fb9faa5b3477b7cf4b33d00501087043a53b27754f14bbe741f891 v1.2.6.tar.gz
|
||||
sha256 6165ae2ad669d9ec6d317492d30a1511365bd31ad29efae757f19c1828bf75b3 v1.2.8.tar.gz
|
||||
sha256 a0965e1492fca558629826f1aa89a9675de3d451cec67540400b30c0bf6ac387 v1.2.10.tar.gz
|
||||
sha256 318886ea1efdec36f088fd6a0a0fe2b2f0ebdfd0066bdb4bd284bad12abc0a41 v1.2.12.tar.gz
|
||||
sha256 0811057ab67b78ce911416e793edaeb14b3f1e105d67b8e67b6302e0eab572e4 v1.2.13.tar.gz
|
||||
sha256 d30d59e143697aa4f0960205b3f5ac59c573b332f20507740ef2dc0fb5ae8ded v1.3.7.tar.gz
|
||||
sha256 9244212589c84b12262769dca6fb985c0c680cb5259c8904b29c511d81fd62d0 v1.3.9.tar.gz
|
||||
sha256 bc6d9452c700af0ebc09c0da8ddba55be4c03ac8928e72ca92d98905800c8018 v1.4.3.tar.gz
|
||||
sha256 ac62c64664bf62fd44df0891c896eecdb6d93def3438271d7892dca75bc069d1 v1.4.4.tar.gz
|
||||
sha256 285a3f4c00a87538bd7d0a82a0a8a758458c02b925349f44f3189f480c326038 v1.4.6.tar.gz
|
||||
sha256 3bb9f54be022067847f5930d21ebbfe4e7a67f589d78930aa0ac713492c28bcc v1.4.9.tar.gz
|
||||
sha256 85a531725f15e2d136131119d42af4507a5389e0947015152075c4c93816fb5c v1.4.12.tar.gz
|
||||
sha256 7507913ba169c103ab67bc51bec31cd977d4348d7bc842da32b7eab5f930a14b v1.5.10.tar.gz
|
||||
sha256 02b79d5e2b07b5e64cd28f1fe84395ee11eef95fc49fd923a9ab93022b148be6 v1.5.11.tar.gz
|
|
@ -15,7 +15,8 @@ CONTAINERD_BIN_ENV = \
|
|||
GO111MODULE=off \
|
||||
GOPATH="$(CONTAINERD_BIN_GOPATH)" \
|
||||
GOBIN="$(CONTAINERD_BIN_GOPATH)/bin" \
|
||||
PATH=$(CONTAINERD_BIN_GOPATH)/bin:$(BR_PATH)
|
||||
PATH=$(CONTAINERD_BIN_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=amd64
|
||||
|
||||
CONTAINERD_BIN_COMPILE_SRC = $(CONTAINERD_BIN_GOPATH)/src/github.com/containerd/containerd
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
[Unit]
|
||||
Description=containerd container runtime
|
||||
Documentation=https://containerd.io
|
||||
After=network-online.target minikube-automount.service
|
||||
Requires=minikube-automount.service
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/sysconfig/containerd
|
||||
EnvironmentFile=-/etc/sysconfig/containerd.minikube
|
||||
EnvironmentFile=/var/run/minikube/env
|
||||
Environment=GOTRACEBACK=crash
|
||||
ExecStartPre=/sbin/modprobe overlay
|
||||
ExecStart=/usr/bin/containerd \
|
||||
$CONTAINERD_OPTIONS \
|
||||
$CONTAINERD_MINIKUBE_OPTIONS \
|
||||
--root ${PERSISTENT_DIR}/var/lib/containerd
|
||||
TasksMax=8192
|
||||
Delegate=yes
|
||||
KillMode=mixed
|
||||
LimitNOFILE=1048576
|
||||
# Having non-zero Limit*s causes performance problems due to accounting overhead
|
||||
# in the kernel. We recommend using cgroups to do container-local accounting.
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
TimeoutStartSec=0
|
||||
Restart=on-abnormal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,3 @@
|
|||
sha256 4acd7605a0cb95a6ad50314d1f2497b92ee0f07382062d0c18a5434c1a3b9513 542e27dee12db61d6e96d2a83a20359474a5efa2.tar.gz
|
||||
sha256 b2a082a8846ac74b8482ee6353d480cea0dec017bbec2b59b16e3f91efa2f5ca eb0c48ef49856f7d098ec005ddebcae197e08e49.tar.gz
|
||||
sha256 ceb99430633f75f354c0e9fea1f3cf0e5138ac5ee3c2691a1a70811fd2feeeef a4d1895a2659ea9974bd7528a706592ab8b74181.tar.gz
|
|
@ -20,7 +20,8 @@ CRI_DOCKERD_ENV = \
|
|||
GO111MODULE=on \
|
||||
GOPATH="$(CRI_DOCKERD_GOPATH)" \
|
||||
GOBIN="$(CRI_DOCKERD_GOPATH)/bin" \
|
||||
PATH=$(CRI_DOCKERD_GOPATH)/bin:$(BR_PATH)
|
||||
PATH=$(CRI_DOCKERD_GOPATH)/bin:$(BR_PATH) \
|
||||
GOARCH=amd64
|
||||
|
||||
CRI_DOCKERD_COMPILE_SRC = $(CRI_DOCKERD_GOPATH)/src/github.com/Mirantis/cri-dockerd
|
||||
CRI_DOCKERD_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_REV)'"
|
|
@ -0,0 +1,8 @@
|
|||
[crio.image]
|
||||
# pause_image = ""
|
||||
|
||||
[crio.network]
|
||||
# cni_default_network = ""
|
||||
|
||||
[crio.runtime]
|
||||
# cgroup_manager = ""
|
|
@ -0,0 +1,9 @@
|
|||
|
||||
#if !defined(CONFIG_H)
|
||||
#define CONFIG_H
|
||||
|
||||
#define BUF_SIZE 8192
|
||||
#define STDIO_BUF_SIZE 8192
|
||||
#define DEFAULT_SOCKET_PATH "/var/run/crio"
|
||||
|
||||
#endif // CONFIG_H
|
|
@ -0,0 +1,28 @@
|
|||
sha256 d310d52706262009af886dbd3e8dcd09a339cdc3b57dc22a9121e6d6a87d2921 v1.8.4.tar.gz
|
||||
sha256 9f79cee99e272c9cfc561ae31235d84d4da59fd5c8b3d3ab6623bf9a92d90c5a v1.10.0.tar.gz
|
||||
sha256 09e53fd550f4f10108879131ee6b8ef1c367ce71a73dcf6350c4cc898751d8c1 v1.11.8.tar.gz
|
||||
sha256 92588998dbb79002c38f65f84602b5659f0d0ef1cd36b1a568a2e40269b66816 v1.13.0.tar.gz
|
||||
sha256 48e7cf64a757d62a3edf214e1b93b74d99f090ca924f956ede2494a260eab2db v1.13.1.tar.gz
|
||||
sha256 7435c4745017f06c260973b049440d924efe65b0df008d14175dfb8f5e23b599 v1.14.0.tar.gz
|
||||
sha256 1f6f72b1f89d4286b2d5b54a48f4d5ed4c0c01065d484635dcb343a706feb743 v1.14.1.tar.gz
|
||||
sha256 f7041a92e2d3a4c341be8df58f1076ba57ecb5daa02b6c65e652530c5f242739 v1.15.0.tar.gz
|
||||
sha256 6218a99877da9b9895e0088944731f5384803c15628d4b3c6b40ba1ddd39e052 v1.15.1.tar.gz
|
||||
sha256 70d4c746fe207422c78420dc4239768f485eea639a38c993c02872ec6305dd1d v1.15.2.tar.gz
|
||||
sha256 05f9614c4d5970b4662499b84c270b0ab953596ee863dcd09c9dc7a2d2f09789 v1.16.0.tar.gz
|
||||
sha256 57e1ee990ef2d5af8b32c33a21b4998682608e3556dcf1d3349666f55e7d95b9 v1.16.1.tar.gz
|
||||
sha256 23a797762e4544ee7c171ef138cfc1141a3f0acc2838d9965c2a58e53b16c3ae v1.17.0.tar.gz
|
||||
sha256 7967e9218fdfb59d6005a9e19c1668469bc5566c2a35927cffe7de8656bb22c7 v1.17.1.tar.gz
|
||||
sha256 336f5c275e260eaae8187e7250fb960441e8dc90615729354d3c04e699870982 v1.17.3.tar.gz
|
||||
sha256 865ded95aceb3a33a391b252522682de6b37b39498704c490b3a321dbefaafcb v1.18.0.tar.gz
|
||||
sha256 794ddc36c2a20fde91fc6cc2c6f02ebdaea85c69b51b67f3994090dbbdbc2a50 v1.18.1.tar.gz
|
||||
sha256 25dc558fbabc987bd58c7eab5230121b258a7b0eb34a49dc6595f1c6f3969116 v1.18.2.tar.gz
|
||||
sha256 d5c6442e3990938badc966cdd1eb9ebe2fc11345452c233aa0d87ca38fbeed81 v1.18.3.tar.gz
|
||||
sha256 74a4e916acddc6cf47ab5752bdebb6732ce2c028505ef57b7edc21d2da9039b6 v1.18.4.tar.gz
|
||||
sha256 fc8a8e61375e3ce30563eeb0fd6534c4f48fc20300a72e6ff51cc99cb2703516 v1.19.0.tar.gz
|
||||
sha256 6165c5b8212ea03be2a465403177318bfe25a54c3e8d66d720344643913a0223 v1.19.1.tar.gz
|
||||
sha256 76fd7543bc92d4364a11060f43a5131893a76c6e6e9d6de3a6bb6292c110b631 v1.20.0.tar.gz
|
||||
sha256 36d9f4cf4966342e2d4099e44d8156c55c6a10745c67ce4f856aa9f6dcc2d9ba v1.20.2.tar.gz
|
||||
sha256 bc53ea8977e252bd9812974c33ff654ee22076598e901464468c5c105a5ef773 v1.22.0.tar.gz
|
||||
sha256 6e1c0e393cd16af907fabb24e4cc068e27c606c5f1071060d46efdcd29cb5c0d v1.22.1.tar.gz
|
||||
sha256 34097a0f535aa79cf990aaee5d3ff6226663587b188cbee11089f120e7f869e4 v1.22.2.tar.gz
|
||||
sha256 52836549cfa27a688659576be9266f4837357a6fa162b1d0a05fa8da62c724b3 v1.22.3.tar.gz
|
|
@ -0,0 +1,20 @@
|
|||
[Unit]
|
||||
Description=CRI-O Auto Update Script
|
||||
Before=crio.service
|
||||
After=minikube-automount.service
|
||||
Requires=minikube-automount.service
|
||||
RequiresMountsFor=/var/lib/containers
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/sysconfig/crio
|
||||
EnvironmentFile=-/etc/sysconfig/crio.minikube
|
||||
EnvironmentFile=/var/run/minikube/env
|
||||
ExecStart=/usr/bin/crio \
|
||||
$CRIO_OPTIONS \
|
||||
$CRIO_MINIKUBE_OPTIONS \
|
||||
wipe
|
||||
|
||||
Type=oneshot
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,409 @@
|
|||
# The CRI-O configuration file specifies all of the available configuration
|
||||
# options and command-line flags for the crio(8) OCI Kubernetes Container Runtime
|
||||
# daemon, but in a TOML format that can be more easily modified and versioned.
|
||||
#
|
||||
# Please refer to crio.conf(5) for details of all configuration options.
|
||||
|
||||
# CRI-O supports partial configuration reload during runtime, which can be
|
||||
# done by sending SIGHUP to the running process. Currently supported options
|
||||
# are explicitly mentioned with: 'This option supports live configuration
|
||||
# reload'.
|
||||
|
||||
# CRI-O reads its storage defaults from the containers-storage.conf(5) file
|
||||
# located at /etc/containers/storage.conf. Modify this storage configuration if
|
||||
# you want to change the system's defaults. If you want to modify storage just
|
||||
# for CRI-O, you can change the storage configuration options here.
|
||||
[crio]
|
||||
|
||||
# Path to the "root directory". CRI-O stores all of its data, including
|
||||
# containers images, in this directory.
|
||||
root = "/var/lib/containers/storage"
|
||||
|
||||
# Path to the "run directory". CRI-O stores all of its state in this directory.
|
||||
runroot = "/var/run/containers/storage"
|
||||
|
||||
# Storage driver used to manage the storage of images and containers. Please
|
||||
# refer to containers-storage.conf(5) to see all available storage drivers.
|
||||
storage_driver = "overlay"
|
||||
|
||||
# List to pass options to the storage driver. Please refer to
|
||||
# containers-storage.conf(5) to see all available storage options.
|
||||
#storage_option = [
|
||||
# "overlay.mountopt=nodev,metacopy=on",
|
||||
#]
|
||||
|
||||
# The default log directory where all logs will go unless directly specified by
|
||||
# the kubelet. The log directory specified must be an absolute directory.
|
||||
log_dir = "/var/log/crio/pods"
|
||||
|
||||
# Location for CRI-O to lay down the temporary version file.
|
||||
# It is used to check if crio wipe should wipe containers, which should
|
||||
# always happen on a node reboot
|
||||
version_file = "/var/run/crio/version"
|
||||
|
||||
# Location for CRI-O to lay down the persistent version file.
|
||||
# It is used to check if crio wipe should wipe images, which should
|
||||
# only happen when CRI-O has been upgraded
|
||||
version_file_persist = "/var/lib/crio/version"
|
||||
|
||||
# The crio.api table contains settings for the kubelet/gRPC interface.
|
||||
[crio.api]
|
||||
|
||||
# Path to AF_LOCAL socket on which CRI-O will listen.
|
||||
listen = "/var/run/crio/crio.sock"
|
||||
|
||||
# IP address on which the stream server will listen.
|
||||
stream_address = "127.0.0.1"
|
||||
|
||||
# The port on which the stream server will listen. If the port is set to "0", then
|
||||
# CRI-O will allocate a random free port number.
|
||||
stream_port = "0"
|
||||
|
||||
# Enable encrypted TLS transport of the stream server.
|
||||
stream_enable_tls = false
|
||||
|
||||
# Path to the x509 certificate file used to serve the encrypted stream. This
|
||||
# file can change, and CRI-O will automatically pick up the changes within 5
|
||||
# minutes.
|
||||
stream_tls_cert = ""
|
||||
|
||||
# Path to the key file used to serve the encrypted stream. This file can
|
||||
# change and CRI-O will automatically pick up the changes within 5 minutes.
|
||||
stream_tls_key = ""
|
||||
|
||||
# Path to the x509 CA(s) file used to verify and authenticate client
|
||||
# communication with the encrypted stream. This file can change and CRI-O will
|
||||
# automatically pick up the changes within 5 minutes.
|
||||
stream_tls_ca = ""
|
||||
|
||||
# Maximum grpc send message size in bytes. If not set or <=0, then CRI-O will default to 16 * 1024 * 1024.
|
||||
grpc_max_send_msg_size = 16777216
|
||||
|
||||
# Maximum grpc receive message size. If not set or <= 0, then CRI-O will default to 16 * 1024 * 1024.
|
||||
grpc_max_recv_msg_size = 16777216
|
||||
|
||||
# The crio.runtime table contains settings pertaining to the OCI runtime used
|
||||
# and options for how to set up and manage the OCI runtime.
|
||||
[crio.runtime]
|
||||
|
||||
# A list of ulimits to be set in containers by default, specified as
|
||||
# "<ulimit name>=<soft limit>:<hard limit>", for example:
|
||||
# "nofile=1024:2048"
|
||||
# If nothing is set here, settings will be inherited from the CRI-O daemon
|
||||
#default_ulimits = [
|
||||
#]
|
||||
|
||||
# If true, the runtime will not use pivot_root, but instead use MS_MOVE.
|
||||
no_pivot = false
|
||||
|
||||
# decryption_keys_path is the path where the keys required for
|
||||
# image decryption are stored. This option supports live configuration reload.
|
||||
decryption_keys_path = "/etc/crio/keys/"
|
||||
|
||||
# Path to the conmon binary, used for monitoring the OCI runtime.
|
||||
# Will be searched for using $PATH if empty.
|
||||
conmon = "/usr/libexec/crio/conmon"
|
||||
|
||||
# Cgroup setting for conmon
|
||||
conmon_cgroup = "system.slice"
|
||||
|
||||
# Environment variable list for the conmon process, used for passing necessary
|
||||
# environment variables to conmon or the runtime.
|
||||
conmon_env = [
|
||||
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
|
||||
]
|
||||
|
||||
# Additional environment variables to set for all the
|
||||
# containers. These are overridden if set in the
|
||||
# container image spec or in the container runtime configuration.
|
||||
default_env = [
|
||||
]
|
||||
|
||||
# If true, SELinux will be used for pod separation on the host.
|
||||
selinux = false
|
||||
|
||||
# Path to the seccomp.json profile which is used as the default seccomp profile
|
||||
# for the runtime. If not specified, then the internal default seccomp profile
|
||||
# will be used. This option supports live configuration reload.
|
||||
seccomp_profile = ""
|
||||
|
||||
# Changes the meaning of an empty seccomp profile. By default
|
||||
# (and according to CRI spec), an empty profile means unconfined.
|
||||
# This option tells CRI-O to treat an empty profile as the default profile,
|
||||
# which might increase security.
|
||||
seccomp_use_default_when_empty = false
|
||||
|
||||
# Used to change the name of the default AppArmor profile of CRI-O. The default
|
||||
# profile name is "crio-default". This profile only takes effect if the user
|
||||
# does not specify a profile via the Kubernetes Pod's metadata annotation. If
|
||||
# the profile is set to "unconfined", then this equals to disabling AppArmor.
|
||||
# This option supports live configuration reload.
|
||||
apparmor_profile = "crio-default"
|
||||
|
||||
# Cgroup management implementation used for the runtime.
|
||||
cgroup_manager = "systemd"
|
||||
|
||||
# Specify whether the image pull must be performed in a separate cgroup.
|
||||
separate_pull_cgroup = ""
|
||||
|
||||
# List of default capabilities for containers. If it is empty or commented out,
|
||||
# only the capabilities defined in the containers json file by the user/kube
|
||||
# will be added.
|
||||
default_capabilities = [
|
||||
"CHOWN",
|
||||
"DAC_OVERRIDE",
|
||||
"FSETID",
|
||||
"FOWNER",
|
||||
"SETGID",
|
||||
"SETUID",
|
||||
"SETPCAP",
|
||||
"NET_BIND_SERVICE",
|
||||
"KILL",
|
||||
]
|
||||
|
||||
# List of default sysctls. If it is empty or commented out, only the sysctls
|
||||
# defined in the container json file by the user/kube will be added.
|
||||
default_sysctls = [
|
||||
]
|
||||
|
||||
# List of additional devices. specified as
|
||||
# "<device-on-host>:<device-on-container>:<permissions>", for example: "--device=/dev/sdc:/dev/xvdc:rwm".
|
||||
#If it is empty or commented out, only the devices
|
||||
# defined in the container json file by the user/kube will be added.
|
||||
additional_devices = [
|
||||
]
|
||||
|
||||
# Path to OCI hooks directories for automatically executed hooks. If one of the
|
||||
# directories does not exist, then CRI-O will automatically skip them.
|
||||
hooks_dir = [
|
||||
"/usr/share/containers/oci/hooks.d",
|
||||
]
|
||||
|
||||
# Path to the file specifying the defaults mounts for each container. The
|
||||
# format of the config is /SRC:/DST, one mount per line. Notice that CRI-O reads
|
||||
# its default mounts from the following two files:
|
||||
#
|
||||
# 1) /etc/containers/mounts.conf (i.e., default_mounts_file): This is the
|
||||
# override file, where users can either add in their own default mounts, or
|
||||
# override the default mounts shipped with the package.
|
||||
#
|
||||
# 2) /usr/share/containers/mounts.conf: This is the default file read for
|
||||
# mounts. If you want CRI-O to read from a different, specific mounts file,
|
||||
# you can change the default_mounts_file. Note, if this is done, CRI-O will
|
||||
# only add mounts it finds in this file.
|
||||
#
|
||||
#default_mounts_file = ""
|
||||
|
||||
# Maximum number of processes allowed in a container.
|
||||
pids_limit = 1024
|
||||
|
||||
# Maximum sized allowed for the container log file. Negative numbers indicate
|
||||
# that no size limit is imposed. If it is positive, it must be >= 8192 to
|
||||
# match/exceed conmon's read buffer. The file is truncated and re-opened so the
|
||||
# limit is never exceeded.
|
||||
log_size_max = -1
|
||||
|
||||
# Whether container output should be logged to journald in addition to the kuberentes log file
|
||||
log_to_journald = false
|
||||
|
||||
# Path to directory in which container exit files are written to by conmon.
|
||||
container_exits_dir = "/var/run/crio/exits"
|
||||
|
||||
# Path to directory for container attach sockets.
|
||||
container_attach_socket_dir = "/var/run/crio"
|
||||
|
||||
# The prefix to use for the source of the bind mounts.
|
||||
bind_mount_prefix = ""
|
||||
|
||||
# If set to true, all containers will run in read-only mode.
|
||||
read_only = false
|
||||
|
||||
# Changes the verbosity of the logs based on the level it is set to. Options
|
||||
# are fatal, panic, error, warn, info, debug and trace. This option supports
|
||||
# live configuration reload.
|
||||
log_level = "info"
|
||||
|
||||
# Filter the log messages by the provided regular expression.
|
||||
# This option supports live configuration reload.
|
||||
log_filter = ""
|
||||
|
||||
# The UID mappings for the user namespace of each container. A range is
|
||||
# specified in the form containerUID:HostUID:Size. Multiple ranges must be
|
||||
# separated by comma.
|
||||
uid_mappings = ""
|
||||
|
||||
# The GID mappings for the user namespace of each container. A range is
|
||||
# specified in the form containerGID:HostGID:Size. Multiple ranges must be
|
||||
# separated by comma.
|
||||
gid_mappings = ""
|
||||
|
||||
# The minimal amount of time in seconds to wait before issuing a timeout
|
||||
# regarding the proper termination of the container. The lowest possible
|
||||
# value is 30s, whereas lower values are not considered by CRI-O.
|
||||
ctr_stop_timeout = 30
|
||||
|
||||
# manage_ns_lifecycle determines whether we pin and remove namespaces
|
||||
# and manage their lifecycle.
|
||||
# This option is being deprecated, and will be unconditionally true in the future.
|
||||
manage_ns_lifecycle = true
|
||||
|
||||
# drop_infra_ctr determines whether CRI-O drops the infra container
|
||||
# when a pod does not have a private PID namespace, and does not use
|
||||
# a kernel separating runtime (like kata).
|
||||
# It requires manage_ns_lifecycle to be true.
|
||||
drop_infra_ctr = false
|
||||
|
||||
# The directory where the state of the managed namespaces gets tracked.
|
||||
# Only used when manage_ns_lifecycle is true.
|
||||
namespaces_dir = "/var/run"
|
||||
|
||||
# pinns_path is the path to find the pinns binary, which is needed to manage namespace lifecycle
|
||||
pinns_path = "/usr/bin/pinns"
|
||||
|
||||
# default_runtime is the _name_ of the OCI runtime to be used as the default.
|
||||
# The name is matched against the runtimes map below. If this value is changed,
|
||||
# the corresponding existing entry from the runtimes map below will be ignored.
|
||||
default_runtime = "runc"
|
||||
|
||||
# The "crio.runtime.runtimes" table defines a list of OCI compatible runtimes.
|
||||
# The runtime to use is picked based on the runtime_handler provided by the CRI.
|
||||
# If no runtime_handler is provided, the runtime will be picked based on the level
|
||||
# of trust of the workload. Each entry in the table should follow the format:
|
||||
#
|
||||
#[crio.runtime.runtimes.runtime-handler]
|
||||
# runtime_path = "/path/to/the/executable"
|
||||
# runtime_type = "oci"
|
||||
# runtime_root = "/path/to/the/root"
|
||||
# privileged_without_host_devices = false
|
||||
# allowed_annotations = []
|
||||
# Where:
|
||||
# - runtime-handler: name used to identify the runtime
|
||||
# - runtime_path (optional, string): absolute path to the runtime executable in
|
||||
# the host filesystem. If omitted, the runtime-handler identifier should match
|
||||
# the runtime executable name, and the runtime executable should be placed
|
||||
# in $PATH.
|
||||
# - runtime_type (optional, string): type of runtime, one of: "oci", "vm". If
|
||||
# omitted, an "oci" runtime is assumed.
|
||||
# - runtime_root (optional, string): root directory for storage of containers
|
||||
# state.
|
||||
# - privileged_without_host_devices (optional, bool): an option for restricting
|
||||
# host devices from being passed to privileged containers.
|
||||
# - allowed_annotations (optional, array of strings): an option for specifying
|
||||
# a list of experimental annotations that this runtime handler is allowed to process.
|
||||
# The currently recognized values are:
|
||||
# "io.kubernetes.cri-o.userns-mode" for configuring a user namespace for the pod.
|
||||
# "io.kubernetes.cri-o.Devices" for configuring devices for the pod.
|
||||
# "io.kubernetes.cri-o.ShmSize" for configuring the size of /dev/shm.
|
||||
|
||||
|
||||
[crio.runtime.runtimes.runc]
|
||||
runtime_path = "/usr/bin/runc"
|
||||
runtime_type = "oci"
|
||||
runtime_root = "/run/runc"
|
||||
|
||||
|
||||
|
||||
|
||||
# crun is a fast and lightweight fully featured OCI runtime and C library for
|
||||
# running containers
|
||||
#[crio.runtime.runtimes.crun]
|
||||
|
||||
# Kata Containers is an OCI runtime, where containers are run inside lightweight
|
||||
# VMs. Kata provides additional isolation towards the host, minimizing the host attack
|
||||
# surface and mitigating the consequences of containers breakout.
|
||||
|
||||
# Kata Containers with the default configured VMM
|
||||
#[crio.runtime.runtimes.kata-runtime]
|
||||
|
||||
# Kata Containers with the QEMU VMM
|
||||
#[crio.runtime.runtimes.kata-qemu]
|
||||
|
||||
# Kata Containers with the Firecracker VMM
|
||||
#[crio.runtime.runtimes.kata-fc]
|
||||
|
||||
# The crio.image table contains settings pertaining to the management of OCI images.
|
||||
#
|
||||
# CRI-O reads its configured registries defaults from the system wide
|
||||
# containers-registries.conf(5) located in /etc/containers/registries.conf. If
|
||||
# you want to modify just CRI-O, you can change the registries configuration in
|
||||
# this file. Otherwise, leave insecure_registries and registries commented out to
|
||||
# use the system's defaults from /etc/containers/registries.conf.
|
||||
[crio.image]
|
||||
|
||||
# Default transport for pulling images from a remote container storage.
|
||||
default_transport = "docker://"
|
||||
|
||||
# The path to a file containing credentials necessary for pulling images from
|
||||
# secure registries. The file is similar to that of /var/lib/kubelet/config.json
|
||||
global_auth_file = ""
|
||||
|
||||
# The image used to instantiate infra containers.
|
||||
# This option supports live configuration reload.
|
||||
pause_image = "k8s.gcr.io/pause:3.2"
|
||||
|
||||
# The path to a file containing credentials specific for pulling the pause_image from
|
||||
# above. The file is similar to that of /var/lib/kubelet/config.json
|
||||
# This option supports live configuration reload.
|
||||
pause_image_auth_file = ""
|
||||
|
||||
# The command to run to have a container stay in the paused state.
|
||||
# When explicitly set to "", it will fallback to the entrypoint and command
|
||||
# specified in the pause image. When commented out, it will fallback to the
|
||||
# default: "/pause". This option supports live configuration reload.
|
||||
pause_command = "/pause"
|
||||
|
||||
# Path to the file which decides what sort of policy we use when deciding
|
||||
# whether or not to trust an image that we've pulled. It is not recommended that
|
||||
# this option be used, as the default behavior of using the system-wide default
|
||||
# policy (i.e., /etc/containers/policy.json) is most often preferred. Please
|
||||
# refer to containers-policy.json(5) for more details.
|
||||
signature_policy = ""
|
||||
|
||||
# List of registries to skip TLS verification for pulling images. Please
|
||||
# consider configuring the registries via /etc/containers/registries.conf before
|
||||
# changing them here.
|
||||
#insecure_registries = "[]"
|
||||
|
||||
# Controls how image volumes are handled. The valid values are mkdir, bind and
|
||||
# ignore; the latter will ignore volumes entirely.
|
||||
image_volumes = "mkdir"
|
||||
|
||||
# List of registries to be used when pulling an unqualified image (e.g.,
|
||||
# "alpine:latest"). By default, registries is set to "docker.io" for
|
||||
# compatibility reasons. Depending on your workload and usecase you may add more
|
||||
# registries (e.g., "quay.io", "registry.fedoraproject.org",
|
||||
# "registry.opensuse.org", etc.).
|
||||
registries = [
|
||||
"docker.io"
|
||||
]
|
||||
|
||||
# Temporary directory to use for storing big files
|
||||
big_files_temporary_dir = ""
|
||||
|
||||
# The crio.network table containers settings pertaining to the management of
|
||||
# CNI plugins.
|
||||
[crio.network]
|
||||
|
||||
# The default CNI network name to be selected. If not set or "", then
|
||||
# CRI-O will pick-up the first one found in network_dir.
|
||||
# cni_default_network = ""
|
||||
|
||||
# Path to the directory where CNI configuration files are located.
|
||||
network_dir = "/etc/cni/net.d/"
|
||||
|
||||
# Paths to directories where CNI plugin binaries are located.
|
||||
plugin_dirs = [
|
||||
"/opt/cni/bin/",
|
||||
]
|
||||
|
||||
# A necessary configuration for Prometheus based metrics retrieval
|
||||
[crio.metrics]
|
||||
|
||||
# Globally enable or disable metrics support.
|
||||
enable_metrics = true
|
||||
|
||||
# The port on which the metrics server will listen.
|
||||
metrics_port = 9090
|
||||
|
||||
# Local socket path to bind the metrics server to
|
||||
metrics_socket = ""
|
|
@ -0,0 +1,408 @@
|
|||
# The CRI-O configuration file specifies all of the available configuration
|
||||
# options and command-line flags for the crio(8) OCI Kubernetes Container Runtime
|
||||
# daemon, but in a TOML format that can be more easily modified and versioned.
|
||||
#
|
||||
# Please refer to crio.conf(5) for details of all configuration options.
|
||||
|
||||
# CRI-O supports partial configuration reload during runtime, which can be
|
||||
# done by sending SIGHUP to the running process. Currently supported options
|
||||
# are explicitly mentioned with: 'This option supports live configuration
|
||||
# reload'.
|
||||
|
||||
# CRI-O reads its storage defaults from the containers-storage.conf(5) file
|
||||
# located at /etc/containers/storage.conf. Modify this storage configuration if
|
||||
# you want to change the system's defaults. If you want to modify storage just
|
||||
# for CRI-O, you can change the storage configuration options here.
|
||||
[crio]
|
||||
|
||||
# Path to the "root directory". CRI-O stores all of its data, including
|
||||
# containers images, in this directory.
|
||||
#root = "/var/lib/containers/storage"
|
||||
|
||||
# Path to the "run directory". CRI-O stores all of its state in this directory.
|
||||
#runroot = "/var/run/containers/storage"
|
||||
|
||||
# Storage driver used to manage the storage of images and containers. Please
|
||||
# refer to containers-storage.conf(5) to see all available storage drivers.
|
||||
#storage_driver = ""
|
||||
|
||||
# List to pass options to the storage driver. Please refer to
|
||||
# containers-storage.conf(5) to see all available storage options.
|
||||
#storage_option = [
|
||||
# "overlay.mountopt=nodev,metacopy=on",
|
||||
#]
|
||||
|
||||
# The default log directory where all logs will go unless directly specified by
|
||||
# the kubelet. The log directory specified must be an absolute directory.
|
||||
log_dir = "/var/log/crio/pods"
|
||||
|
||||
# Location for CRI-O to lay down the temporary version file.
|
||||
# It is used to check if crio wipe should wipe containers, which should
|
||||
# always happen on a node reboot
|
||||
version_file = "/var/run/crio/version"
|
||||
|
||||
# Location for CRI-O to lay down the persistent version file.
|
||||
# It is used to check if crio wipe should wipe images, which should
|
||||
# only happen when CRI-O has been upgraded
|
||||
version_file_persist = "/var/lib/crio/version"
|
||||
|
||||
# The crio.api table contains settings for the kubelet/gRPC interface.
|
||||
[crio.api]
|
||||
|
||||
# Path to AF_LOCAL socket on which CRI-O will listen.
|
||||
listen = "/var/run/crio/crio.sock"
|
||||
|
||||
# IP address on which the stream server will listen.
|
||||
stream_address = "127.0.0.1"
|
||||
|
||||
# The port on which the stream server will listen. If the port is set to "0", then
|
||||
# CRI-O will allocate a random free port number.
|
||||
stream_port = "0"
|
||||
|
||||
# Enable encrypted TLS transport of the stream server.
|
||||
stream_enable_tls = false
|
||||
|
||||
# Path to the x509 certificate file used to serve the encrypted stream. This
|
||||
# file can change, and CRI-O will automatically pick up the changes within 5
|
||||
# minutes.
|
||||
stream_tls_cert = ""
|
||||
|
||||
# Path to the key file used to serve the encrypted stream. This file can
|
||||
# change and CRI-O will automatically pick up the changes within 5 minutes.
|
||||
stream_tls_key = ""
|
||||
|
||||
# Path to the x509 CA(s) file used to verify and authenticate client
|
||||
# communication with the encrypted stream. This file can change and CRI-O will
|
||||
# automatically pick up the changes within 5 minutes.
|
||||
stream_tls_ca = ""
|
||||
|
||||
# Maximum grpc send message size in bytes. If not set or <=0, then CRI-O will default to 16 * 1024 * 1024.
|
||||
grpc_max_send_msg_size = 16777216
|
||||
|
||||
# Maximum grpc receive message size. If not set or <= 0, then CRI-O will default to 16 * 1024 * 1024.
|
||||
grpc_max_recv_msg_size = 16777216
|
||||
|
||||
# The crio.runtime table contains settings pertaining to the OCI runtime used
|
||||
# and options for how to set up and manage the OCI runtime.
|
||||
[crio.runtime]
|
||||
|
||||
# A list of ulimits to be set in containers by default, specified as
|
||||
# "<ulimit name>=<soft limit>:<hard limit>", for example:
|
||||
# "nofile=1024:2048"
|
||||
# If nothing is set here, settings will be inherited from the CRI-O daemon
|
||||
#default_ulimits = [
|
||||
#]
|
||||
|
||||
# If true, the runtime will not use pivot_root, but instead use MS_MOVE.
|
||||
no_pivot = false
|
||||
|
||||
# decryption_keys_path is the path where the keys required for
|
||||
# image decryption are stored. This option supports live configuration reload.
|
||||
decryption_keys_path = "/etc/crio/keys/"
|
||||
|
||||
# Path to the conmon binary, used for monitoring the OCI runtime.
|
||||
# Will be searched for using $PATH if empty.
|
||||
conmon = ""
|
||||
|
||||
# Cgroup setting for conmon
|
||||
conmon_cgroup = "system.slice"
|
||||
|
||||
# Environment variable list for the conmon process, used for passing necessary
|
||||
# environment variables to conmon or the runtime.
|
||||
conmon_env = [
|
||||
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
|
||||
]
|
||||
|
||||
# Additional environment variables to set for all the
|
||||
# containers. These are overridden if set in the
|
||||
# container image spec or in the container runtime configuration.
|
||||
default_env = [
|
||||
]
|
||||
|
||||
# If true, SELinux will be used for pod separation on the host.
|
||||
selinux = false
|
||||
|
||||
# Path to the seccomp.json profile which is used as the default seccomp profile
|
||||
# for the runtime. If not specified, then the internal default seccomp profile
|
||||
# will be used. This option supports live configuration reload.
|
||||
seccomp_profile = ""
|
||||
|
||||
# Changes the meaning of an empty seccomp profile. By default
|
||||
# (and according to CRI spec), an empty profile means unconfined.
|
||||
# This option tells CRI-O to treat an empty profile as the default profile,
|
||||
# which might increase security.
|
||||
seccomp_use_default_when_empty = false
|
||||
|
||||
# Used to change the name of the default AppArmor profile of CRI-O. The default
|
||||
# profile name is "crio-default". This profile only takes effect if the user
|
||||
# does not specify a profile via the Kubernetes Pod's metadata annotation. If
|
||||
# the profile is set to "unconfined", then this equals to disabling AppArmor.
|
||||
# This option supports live configuration reload.
|
||||
apparmor_profile = "crio-default"
|
||||
|
||||
# Cgroup management implementation used for the runtime.
|
||||
cgroup_manager = "systemd"
|
||||
|
||||
# Specify whether the image pull must be performed in a separate cgroup.
|
||||
separate_pull_cgroup = ""
|
||||
|
||||
# List of default capabilities for containers. If it is empty or commented out,
|
||||
# only the capabilities defined in the containers json file by the user/kube
|
||||
# will be added.
|
||||
default_capabilities = [
|
||||
"CHOWN",
|
||||
"DAC_OVERRIDE",
|
||||
"FSETID",
|
||||
"FOWNER",
|
||||
"SETGID",
|
||||
"SETUID",
|
||||
"SETPCAP",
|
||||
"NET_BIND_SERVICE",
|
||||
"KILL",
|
||||
]
|
||||
|
||||
# List of default sysctls. If it is empty or commented out, only the sysctls
|
||||
# defined in the container json file by the user/kube will be added.
|
||||
default_sysctls = [
|
||||
]
|
||||
|
||||
# List of additional devices. specified as
|
||||
# "<device-on-host>:<device-on-container>:<permissions>", for example: "--device=/dev/sdc:/dev/xvdc:rwm".
|
||||
#If it is empty or commented out, only the devices
|
||||
# defined in the container json file by the user/kube will be added.
|
||||
additional_devices = [
|
||||
]
|
||||
|
||||
# Path to OCI hooks directories for automatically executed hooks. If one of the
|
||||
# directories does not exist, then CRI-O will automatically skip them.
|
||||
hooks_dir = [
|
||||
"/usr/share/containers/oci/hooks.d",
|
||||
]
|
||||
|
||||
# Path to the file specifying the defaults mounts for each container. The
|
||||
# format of the config is /SRC:/DST, one mount per line. Notice that CRI-O reads
|
||||
# its default mounts from the following two files:
|
||||
#
|
||||
# 1) /etc/containers/mounts.conf (i.e., default_mounts_file): This is the
|
||||
# override file, where users can either add in their own default mounts, or
|
||||
# override the default mounts shipped with the package.
|
||||
#
|
||||
# 2) /usr/share/containers/mounts.conf: This is the default file read for
|
||||
# mounts. If you want CRI-O to read from a different, specific mounts file,
|
||||
# you can change the default_mounts_file. Note, if this is done, CRI-O will
|
||||
# only add mounts it finds in this file.
|
||||
#
|
||||
#default_mounts_file = ""
|
||||
|
||||
# Maximum number of processes allowed in a container.
|
||||
pids_limit = 1024
|
||||
|
||||
# Maximum sized allowed for the container log file. Negative numbers indicate
|
||||
# that no size limit is imposed. If it is positive, it must be >= 8192 to
|
||||
# match/exceed conmon's read buffer. The file is truncated and re-opened so the
|
||||
# limit is never exceeded.
|
||||
log_size_max = -1
|
||||
|
||||
# Whether container output should be logged to journald in addition to the kuberentes log file
|
||||
log_to_journald = false
|
||||
|
||||
# Path to directory in which container exit files are written to by conmon.
|
||||
container_exits_dir = "/var/run/crio/exits"
|
||||
|
||||
# Path to directory for container attach sockets.
|
||||
container_attach_socket_dir = "/var/run/crio"
|
||||
|
||||
# The prefix to use for the source of the bind mounts.
|
||||
bind_mount_prefix = ""
|
||||
|
||||
# If set to true, all containers will run in read-only mode.
|
||||
read_only = false
|
||||
|
||||
# Changes the verbosity of the logs based on the level it is set to. Options
|
||||
# are fatal, panic, error, warn, info, debug and trace. This option supports
|
||||
# live configuration reload.
|
||||
log_level = "info"
|
||||
|
||||
# Filter the log messages by the provided regular expression.
|
||||
# This option supports live configuration reload.
|
||||
log_filter = ""
|
||||
|
||||
# The UID mappings for the user namespace of each container. A range is
|
||||
# specified in the form containerUID:HostUID:Size. Multiple ranges must be
|
||||
# separated by comma.
|
||||
uid_mappings = ""
|
||||
|
||||
# The GID mappings for the user namespace of each container. A range is
|
||||
# specified in the form containerGID:HostGID:Size. Multiple ranges must be
|
||||
# separated by comma.
|
||||
gid_mappings = ""
|
||||
|
||||
# The minimal amount of time in seconds to wait before issuing a timeout
|
||||
# regarding the proper termination of the container. The lowest possible
|
||||
# value is 30s, whereas lower values are not considered by CRI-O.
|
||||
ctr_stop_timeout = 30
|
||||
|
||||
# manage_ns_lifecycle determines whether we pin and remove namespaces
|
||||
# and manage their lifecycle.
|
||||
# This option is being deprecated, and will be unconditionally true in the future.
|
||||
manage_ns_lifecycle = true
|
||||
|
||||
# drop_infra_ctr determines whether CRI-O drops the infra container
|
||||
# when a pod does not have a private PID namespace, and does not use
|
||||
# a kernel separating runtime (like kata).
|
||||
# It requires manage_ns_lifecycle to be true.
|
||||
drop_infra_ctr = false
|
||||
|
||||
# The directory where the state of the managed namespaces gets tracked.
|
||||
# Only used when manage_ns_lifecycle is true.
|
||||
namespaces_dir = "/var/run"
|
||||
|
||||
# pinns_path is the path to find the pinns binary, which is needed to manage namespace lifecycle
|
||||
pinns_path = ""
|
||||
|
||||
# default_runtime is the _name_ of the OCI runtime to be used as the default.
|
||||
# The name is matched against the runtimes map below. If this value is changed,
|
||||
# the corresponding existing entry from the runtimes map below will be ignored.
|
||||
default_runtime = "runc"
|
||||
|
||||
# The "crio.runtime.runtimes" table defines a list of OCI compatible runtimes.
|
||||
# The runtime to use is picked based on the runtime_handler provided by the CRI.
|
||||
# If no runtime_handler is provided, the runtime will be picked based on the level
|
||||
# of trust of the workload. Each entry in the table should follow the format:
|
||||
#
|
||||
#[crio.runtime.runtimes.runtime-handler]
|
||||
# runtime_path = "/path/to/the/executable"
|
||||
# runtime_type = "oci"
|
||||
# runtime_root = "/path/to/the/root"
|
||||
# privileged_without_host_devices = false
|
||||
# allowed_annotations = []
|
||||
# Where:
|
||||
# - runtime-handler: name used to identify the runtime
|
||||
# - runtime_path (optional, string): absolute path to the runtime executable in
|
||||
# the host filesystem. If omitted, the runtime-handler identifier should match
|
||||
# the runtime executable name, and the runtime executable should be placed
|
||||
# in $PATH.
|
||||
# - runtime_type (optional, string): type of runtime, one of: "oci", "vm". If
|
||||
# omitted, an "oci" runtime is assumed.
|
||||
# - runtime_root (optional, string): root directory for storage of containers
|
||||
# state.
|
||||
# - privileged_without_host_devices (optional, bool): an option for restricting
|
||||
# host devices from being passed to privileged containers.
|
||||
# - allowed_annotations (optional, array of strings): an option for specifying
|
||||
# a list of experimental annotations that this runtime handler is allowed to process.
|
||||
# The currently recognized values are:
|
||||
# "io.kubernetes.cri-o.userns-mode" for configuring a user namespace for the pod.
|
||||
# "io.kubernetes.cri-o.Devices" for configuring devices for the pod.
|
||||
# "io.kubernetes.cri-o.ShmSize" for configuring the size of /dev/shm.
|
||||
|
||||
|
||||
[crio.runtime.runtimes.runc]
|
||||
runtime_path = ""
|
||||
runtime_type = "oci"
|
||||
runtime_root = "/run/runc"
|
||||
|
||||
|
||||
|
||||
|
||||
# crun is a fast and lightweight fully featured OCI runtime and C library for
|
||||
# running containers
|
||||
#[crio.runtime.runtimes.crun]
|
||||
|
||||
# Kata Containers is an OCI runtime, where containers are run inside lightweight
|
||||
# VMs. Kata provides additional isolation towards the host, minimizing the host attack
|
||||
# surface and mitigating the consequences of containers breakout.
|
||||
|
||||
# Kata Containers with the default configured VMM
|
||||
#[crio.runtime.runtimes.kata-runtime]
|
||||
|
||||
# Kata Containers with the QEMU VMM
|
||||
#[crio.runtime.runtimes.kata-qemu]
|
||||
|
||||
# Kata Containers with the Firecracker VMM
|
||||
#[crio.runtime.runtimes.kata-fc]
|
||||
|
||||
# The crio.image table contains settings pertaining to the management of OCI images.
|
||||
#
|
||||
# CRI-O reads its configured registries defaults from the system wide
|
||||
# containers-registries.conf(5) located in /etc/containers/registries.conf. If
|
||||
# you want to modify just CRI-O, you can change the registries configuration in
|
||||
# this file. Otherwise, leave insecure_registries and registries commented out to
|
||||
# use the system's defaults from /etc/containers/registries.conf.
|
||||
[crio.image]
|
||||
|
||||
# Default transport for pulling images from a remote container storage.
|
||||
default_transport = "docker://"
|
||||
|
||||
# The path to a file containing credentials necessary for pulling images from
|
||||
# secure registries. The file is similar to that of /var/lib/kubelet/config.json
|
||||
global_auth_file = ""
|
||||
|
||||
# The image used to instantiate infra containers.
|
||||
# This option supports live configuration reload.
|
||||
pause_image = "k8s.gcr.io/pause:3.2"
|
||||
|
||||
# The path to a file containing credentials specific for pulling the pause_image from
|
||||
# above. The file is similar to that of /var/lib/kubelet/config.json
|
||||
# This option supports live configuration reload.
|
||||
pause_image_auth_file = ""
|
||||
|
||||
# The command to run to have a container stay in the paused state.
|
||||
# When explicitly set to "", it will fallback to the entrypoint and command
|
||||
# specified in the pause image. When commented out, it will fallback to the
|
||||
# default: "/pause". This option supports live configuration reload.
|
||||
pause_command = "/pause"
|
||||
|
||||
# Path to the file which decides what sort of policy we use when deciding
|
||||
# whether or not to trust an image that we've pulled. It is not recommended that
|
||||
# this option be used, as the default behavior of using the system-wide default
|
||||
# policy (i.e., /etc/containers/policy.json) is most often preferred. Please
|
||||
# refer to containers-policy.json(5) for more details.
|
||||
signature_policy = ""
|
||||
|
||||
# List of registries to skip TLS verification for pulling images. Please
|
||||
# consider configuring the registries via /etc/containers/registries.conf before
|
||||
# changing them here.
|
||||
#insecure_registries = "[]"
|
||||
|
||||
# Controls how image volumes are handled. The valid values are mkdir, bind and
|
||||
# ignore; the latter will ignore volumes entirely.
|
||||
image_volumes = "mkdir"
|
||||
|
||||
# List of registries to be used when pulling an unqualified image (e.g.,
|
||||
# "alpine:latest"). By default, registries is set to "docker.io" for
|
||||
# compatibility reasons. Depending on your workload and usecase you may add more
|
||||
# registries (e.g., "quay.io", "registry.fedoraproject.org",
|
||||
# "registry.opensuse.org", etc.).
|
||||
#registries = [
|
||||
# ]
|
||||
|
||||
# Temporary directory to use for storing big files
|
||||
big_files_temporary_dir = ""
|
||||
|
||||
# The crio.network table containers settings pertaining to the management of
|
||||
# CNI plugins.
|
||||
[crio.network]
|
||||
|
||||
# The default CNI network name to be selected. If not set or "", then
|
||||
# CRI-O will pick-up the first one found in network_dir.
|
||||
# cni_default_network = ""
|
||||
|
||||
# Path to the directory where CNI configuration files are located.
|
||||
network_dir = "/etc/cni/net.d/"
|
||||
|
||||
# Paths to directories where CNI plugin binaries are located.
|
||||
plugin_dirs = [
|
||||
"/opt/cni/bin/",
|
||||
]
|
||||
|
||||
# A necessary configuration for Prometheus based metrics retrieval
|
||||
[crio.metrics]
|
||||
|
||||
# Globally enable or disable metrics support.
|
||||
enable_metrics = false
|
||||
|
||||
# The port on which the metrics server will listen.
|
||||
metrics_port = 9090
|
||||
|
||||
# Local socket path to bind the metrics server to
|
||||
metrics_socket = ""
|
|
@ -0,0 +1,29 @@
|
|||
[Unit]
|
||||
Description=Container Runtime Interface for OCI (CRI-O)
|
||||
Documentation=https://github.com/cri-o/cri-o
|
||||
Wants=network-online.target
|
||||
After=network-online.target minikube-automount.service
|
||||
Requires=minikube-automount.service
|
||||
After=crio-wipe.service
|
||||
Requires=crio-wipe.service
|
||||
|
||||
[Service]
|
||||
Type=notify
|
||||
EnvironmentFile=-/etc/sysconfig/crio
|
||||
EnvironmentFile=-/etc/sysconfig/crio.minikube
|
||||
EnvironmentFile=/var/run/minikube/env
|
||||
Environment=GOTRACEBACK=crash
|
||||
ExecStart=/usr/bin/crio \
|
||||
$CRIO_OPTIONS \
|
||||
$CRIO_MINIKUBE_OPTIONS
|
||||
ExecReload=/bin/kill -s HUP $MAINPID
|
||||
TasksMax=8192
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=1048576
|
||||
LimitCORE=infinity
|
||||
OOMScoreAdjust=-999
|
||||
TimeoutStartSec=0
|
||||
Restart=on-abnormal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,7 @@
|
|||
{
|
||||
"default": [
|
||||
{
|
||||
"type": "insecureAcceptAnything"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
[registries.search]
|
||||
registries = ['docker.io']
|
||||
|
||||
[registries.insecure]
|
||||
registries = []
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue