标签 alpine 下的文章

Proxmox VE关于Alpine虚机、MAC地址还有Hostname的小坑

Proxmox VE简称PVE,有kvmlxc两种模式,说人话就是虚拟机和容器,比较轻量的应用我会优先使用lxc,磁盘和内存占用都非常低。

如果对glic没有强制要求的,我会优先使用 Alpine Linux 这个发行版,除开应用本身的资源,只有2m左右的系统文件,几乎没有内存和磁盘浪费。

我的PVE和虚机优先跑在SSD上,会比跑在HDD上有更好的io,所有SSD空间需要省着用。

问题1:Alpine DHCP可能不发送主机名

我在使用Alpine的时候发现部分机器启动后,DHCP不会发送Hostname,导致OpenWrt看到的主机名是问号?爬了一下Alpine的文档后找到,可在/etc/network/interfaces 增加hostname参数来自定义发送主机名,问题解决,验证方式是查找系统进程udhcpc 看运行参数是否有 hostname:xxx字样,例如:

> ps|grep dhcp
> /sbin/udhcpc -b -R -p /var/run/udhcpc.eth0.pid -i eth0 -x hostname:ptn

原因未知,使用的镜像都是一致的,部分容器开起来就是会出问题。。。可能隐藏的比较深。

- 阅读剩余部分 -

[分享] Alpine 真是个好东西

把 VPS 上的 Ngrok 用 Alpine 重新打包了一下, 体积小了很多

root@vultr:/opt/ngrok# docker images 
REPOSITORY          TAG             IMAGE ID        CREATED          SIZE
ngrokd.alpine       latest          d891322d86e4    2 minutes ago    14.03 MB
alpine              3.5             4a415e366388    11 days ago      3.987 MB
root@vultr:/opt/ngrok# du -sh ./bin/ngrokd
9.6M    ./bin/ngrokd
root@vultr:/opt/ngrok# ldd bin/ngrokd
    not a dynamic executable

因为依赖库的问题, ngrok 编译的时候需要增加 CGO_ENABLED=0 来指定静态编译, 所以生成的可执行文件会比较大.

例如: root@vultr:/opt/ngrok# CGO_ENABLED=0 make release-server.

感觉可以把其它东西也都挪到 docker 了