golang程序使用alpine编译出最小arm镜像实现
目录
- golang程序使用alpine编译出最小arm镜像
- 基础镜像准备
- golang程序编译镜像
- 运行
golang程序使用alpine编译出最小arm镜像
基础镜像准备
如果想要打arm架构的镜像就在arm的机器上执行,如果想打amd的镜像就在amd机器上执行, 会自己根据机器的架构来下载基础镜像。
这里我以arm架构的机器为例
查看dockerfile
FROM alpine:latesjst # 设置时区为上海 RUN apk add tzdata &&cp /usr/share/zoneinfo/Asia/Shanghai/etc/localtime \ &&echo 编程客栈"Asia/Shanghai">/etc/timezone \ &&apk del tzdata
编译镜像命令,把它做为基础镜像 docker build -t 192.168.1.187/library/alpine-arm64-go:v1.0 .
golang程序编译镜像
编译Dockerfile如下
FROM 192python.168.1.187/library/alpine-arm64-go:v1.0 COPY analysis /opt/analysis RUN chmod +x /opt/analysis ENTRYPOINT ./opt/analysis -MQTT_IP $MQTT_IP -MQTT_PORT $MQTT_PORT -MQTT_USERNAME $MQTT_USERNAME -MQTT_PASSWORD $MQTT_PASSWORD
编译命令 docker build -t 192.168.1.187/library/arm64-analysis:v1.0 .
运行
在前面的Dockerfile中,我们加入的环境变量,启动的时候需要设置环境变量启动
docker run -d --name analysis --restart=always -e MQTT_IP=192.168.1.188 -e MQTT_PORT=1883 -e MQTT_USERNAME=admin -e MQTT_PASSWORD=liang_2023 192.168.1.187/librwww.devze.comary/arm64-analysis:v1.0
以上就是golang程序使用alpine编译出最小arm镜像实现的详细内容,更多关于go alpi编程客栈ne编译arm镜像的资料请关注编程客栈(www.devze.com)其它相关文章!
精彩评论