1、项目代码目录如下,config文件夹的yml文件配置了mysql的连接信息
2、打包命令
在项目根目录先运行如下命令
go env -w GOOS=linux
go env -w GOARCH="amd64"
go build
3、在Linux系统直接运行,把打包好的程序文件和yml文件上传到自己的目录下
给自己打包的程序赋予权限
chmod +x gin-test
./gin-test
即可直接运行在Linux系统
使用脚本运行
#!/bin/sh
processNum=`ps | grep gin-test | grep -v grep | wc -l`;
echo $processNum
if [ $processNum -eq 0 ];then
cd /home/bgy/app/goapp/gin-web/
nohup ./gin-test > /home/bgy/app/goapp/gin-web/nohup.out &
echo "reset success"
else
echo running
fi
4、在docker环境中运行
(1)编写dockerfile
FROM alpine:latest
MAINTAINER crud-boy
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
WORKDIR /
EXPOSE 8090
ADD ./gin-test ./gin-test
ENTRYPOINT ["/gin-test"]
(2)编写docker-compose.yml文件
version: '3.0'
services:
gin-test:
build:
context: .
dockerfile: dockerfile
image: test:v1
container_name: gin-test
restart: always
privileged: true
network_mode: "host"
environment:
- TZ=Asia/Shanghai
#ports:
#- 3306:3306
volumes:
- ./config:/config
docker-compose up -d
回车即可创建镜像和容器