# ============================================================================================ # # To abort, delete the contents of this file including the comments and save as an empty file # ============================================================================================ #
# Number of CPUs to be allocated to the virtual machine. # Default: 2 cpu:2
# Size of the disk in GiB to be allocated to the virtual machine for container data. # NOTE: value can only be increased after virtual machine has been created. # # Default: 100 disk:100
# Size of the memory in GiB to be allocated to the virtual machine. # Default: 2 memory:2
# Architecture of the virtual machine (x86_64, aarch64, host) # # NOTE: value cannot be changed after virtual machine is created. # Default: host arch: aarch64
# Container runtime to be used (docker, containerd). # # NOTE: value cannot be changed after virtual machine is created. # Default: docker runtime: docker
# Set custom hostname for the virtual machine. # Default: colima # colima-profile_name for other profiles hostname: colima
# Kubernetes configuration for the virtual machine. kubernetes: # Enable kubernetes. # Default: false enabled:false # Kubernetes version to use. # This needs to exactly match a k3s version https://github.com/k3s-io/k3s/releases # Default: latest stable release version: v1.33.4+k3s1
# Additional args to pass to k3s https://docs.k3s.io/cli/server # Default: traefik is disabled k3sArgs: ---disable=traefik
# Kubernetes port to listen on # A common port is 6443, though left unbound to ensure no port conflicts # Default: pick random unbound port port:0
# Auto-activate on the Host for client access. # Setting to true does the following on startup # - sets as active Docker context (for Docker runtime). # - sets as active Kubernetes context (if Kubernetes is enabled). # - sets as active Incus remote (for Incus runtime). # Default: true autoActivate:true # Network configurations for the virtual machine. network: # Assign reachable IP address to the virtual machine. # NOTE: this is currently macOS only and ignored on Linux. # Default: false address:false
# Network mode for the virtual machine (shared, bridged). # NOTE: this is currently macOS only and ignored on Linux. # Default: shared mode: shared
# Network interface to use for bridged mode. # This is only used when mode is set to bridged. # NOTE: this is currently macOS only and ignored on Linux. # Default: en0 interface: en0
# Use the assigned IP address as the preferred route for the VM. # Note: this only has an effect when `address` is set to true. # Default: false preferredRoute:false # Custom DNS resolvers for the virtual machine. # # EXAMPLE # dns: [8.8.8.8, 1.1.1.1] # # Default: [] dns: -8.8.8.8 -1.1.1.1
# DNS hostnames to resolve to custom targets using the internal resolver. # This setting has no effect if a custom DNS resolver list is supplied above. # It does not configure the /etc/hosts files of any machine or container. # The value can be an IP address or another host. # # EXAMPLE # dnsHosts: # example.com: 1.2.3.4 dnsHosts: {}
# Replicate host IP addresses in the VM. This enables port forwarding to specific # host IP addresses. # e.g. `docker run --port 10.0.1.2:8080:8080 alpine` would only forward to the # specified IP address. # # Default: false hostAddresses:false
# Forward the host's SSH agent to the virtual machine. # Default: false forwardAgent:false
# Docker daemon configuration that maps directly to daemon.json. # https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file. # NOTE: some settings may affect Colima's ability to start docker. e.g. `hosts`. # # # EXAMPLE - disable buildkit # docker: # features: # buildkit: false # # EXAMPLE - add insecure registries # docker: # insecure-registries: # - myregistry.com:5000 # - host.docker.internal:5000 # # Colima default behaviour: buildkit enabled # Default: {} docker: registry-mirrors: - https://docker.mirrors.ustc.edu.cn
# Virtual Machine type (qemu, vz) # NOTE: this is macOS 13 only. For Linux and macOS <13.0, qemu is always used. # # vz is macOS virtualization framework and requires macOS 13 # # NOTE: value cannot be changed after virtual machine is created. # Default: qemu vmType: vz
# Port forwarder for the virtual machine (ssh, grpc). # ssh is more stable but supports only TCP. # grpc supports both TCP and UDP, but is experimental. # # Default: ssh portForwarder: ssh
# Utilise rosetta for amd64 emulation (requires m1 mac and vmType `vz`) # Default: false rosetta:false
# Enable foreign architecture emulation via binfmt (e.g. amd64 on arm64, arm64 on amd64) # Default: true binfmt:true
# Enable nested virtualization for the virtual machine (requires m3 mac and vmType `vz`) # Default: false nestedVirtualization:false
# Volume mount driver for the virtual machine (virtiofs, 9p, sshfs). # # virtiofs is limited to macOS and vmType `vz`. It is the fastest of the options. # # 9p is the recommended and the most stable option for vmType `qemu`. # # sshfs is faster than 9p but the least reliable of the options (when there are lots # of concurrent reads or writes). # # NOTE: value cannot be changed after virtual machine is created. # Default: virtiofs (for vz), sshfs (for qemu) mountType: virtiofs
# Propagate inotify file events to the VM. # NOTE: this is experimental. mountInotify:true
# The CPU type for the virtual machine (requires vmType `qemu`). # Options available for host emulation can be checked with: `qemu-system-$(arch) -cpu help`. # Instructions are also supported by appending to the cpu type e.g. "qemu64,+ssse3".
# Default: host cpuType:""
# Custom provision scripts for the virtual machine. # Provisioning scripts are executed on startup and therefore needs to be idempotent. # # EXAMPLE - script executed as root # provision: # - mode: system # script: apt-get install htop vim # # EXAMPLE - script executed as user # provision: # - mode: user # script: | # [ -f ~/.provision ] && exit 0; # echo provisioning as $USER... # touch ~/.provision # # Default: [] provision: []
# Modify ~/.ssh/config automatically to include a SSH config for the virtual machine. # SSH config will still be generated in $COLIMA_HOME/ssh_config regardless. # Default: true sshConfig:true
# The port number for the SSH server for the virtual machine. # When set to 0, a random available port is used. # # Default: 0 sshPort:0
# Configure volume mounts for the virtual machine. # Colima mounts user's home directory by default to provide a familiar # user experience. # # EXAMPLE # mounts: # - location: ~/secrets # writable: false # - location: ~/projects # # Colima default behaviour: $HOME is mounted as writable. # Default: [] mounts: []
# Specify a custom disk image for the virtual machine. # When not specified, Colima downloads an appropriate disk image from Github at # https://github.com/abiosoft/colima-core/releases. # The file path to a custom disk image can be specified to override the behaviour. # # Default: "" diskImage:""
# Size of the disk in GiB for the root filesystem of the virtual machine. # This value is ignored if no runtime is in use. i.e. `none` runtime. # Default: 20 rootDisk:20
# Environment variables for the virtual machine. # # EXAMPLE # env: # KEY: value # ANOTHER_KEY: another value # # Default: {} env: HTTP_PROXY:"" HTTPS_PROXY:"" NO_PROXY:""
修改配置文件
jobs就是你需要修改的文件。你可以自己去编译Go的代码。
Go编译linux代码如下:
1
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o myapp_mac main.go