Go如何在windows编译成二进制文件

近日见闻

  1. 特斯拉为首次涉及自动驾驶仪死亡的试验做准备。 –Reuters.com

  2. 在庆祝其成立32周年后的几天,Linus Torvalds今天宣布Linux 6.5内核系列的最终版本作为主要更新,引入了一些新功能,更新和新驱动程序以获得更好的硬件支持以及其他更改。经过七周的RC,Linux内核6.5具有新功能,例如ALSA中的MIDI 2.0支持,对RISC-V架构的ACPI支持,对UML(用户模式Linux)的Landlock支持,对AMD“Zen”系统的更好支持,以及对ARMv8.8 memcpy/memset指令的用户空间支持。Linux 6.5 中还新增了对功率封顶子系统和英特尔 RAPL 的 TPMI 接口驱动程序的英特尔 TPMI(拓扑感知寄存器和 PM 胶囊接口)支持,以及 EAS 平衡器中的“可运行提升”功能,以提高特定工作负载的 CPU 利用率。此版本还改进了 SMP 调度的负载平衡器,以识别具有多个繁忙同级的 SMT 内核,并允许优先级较低的 CPU 拉取任务以避免多余的迁移,并改进了 EXT4 文件系统的日志、块分配器子系统和并行 DIO 覆盖的性能。–linux.slashdot.org

  3. Rust 1.72.0 发布 –lwn.net

go编译为linux二进制文件

三行代码搞定:

set GOOS=linux
set GOARCH=amd64
go build -o myapp-linux

但是我遇到问题了,随后使用以下三行代码解决,可能是因为我用的是powershell的原因:

$env:GOOS = "linux"
$env:GOARCH = "amd64"
go build -o myapp-linux

然后传输到linux服务器:

scp myapp-linux user@linux-server-ip:/path/to/destination/

赋权限:

chmod +x /path/to/destination/myapp-linux

运行应用程序:

./myapp-linux

docker创建数据库

一句命令搞定:

docker run -d --name mysql-container -e MYSQL_ROOT_PASSWORD=your_password -p 3306:3306 -v mysql-data:/var/lib/mysql mysql:8

k8s证书更新

kubeadm alpha certs renew all

kubeadm alpha kubeconfig user --org system:masters --client-name kubernetes-admin > $HOME/.kube/config

sudo systemctl restart kubelet