go-zero 非k8s单体服务上线流程
1:-v /opt/redisGo/conf:/etc/redis/conf将服务器/opt/redisGo/conf中的文件放在了容器的/etc/redis/conf文件夹中,服务器/opt/redisGo/conf文件中有redis.conf,自己放进去的。2:redis-server /etc/redis/conf/redis.conf以配置文件启动redis,加载容器内的conf文件。/o
1、安装mysql 镜像
docker pull mysql:5.7
2、创建mysql容器(主机目录要先存在 不然启动不起来。/opt/mysqlGo)
docker run --name mysql-go -e MYSQL_ROOT_PASSWORD=数据库密码 -p 8888:3306 -v /opt/mysqlGo:/var/lib/mysql -d 镜像id
3、可以通过navicat连接数据库,进行数据库创建、表结构创建了
用户名:root
密码:123456789
端口:8888
4、安装redis镜像
docker pull redis:latest
5、安装redis容器(同样的文件要建好) redis.conf文件下载
docker run --name redis-go -p 6666:6379 -v /opt/redisGo/conf:/etc/redis/conf -v /opt/redisGo/data:/data -d 镜像id redis-server /etc/redis/conf/redis.conf --appendonly yes
1: -v /opt/redisGo/conf:/etc/redis/conf 将服务器/opt/redisGo/conf中的文件放在了容器的/etc/redis/conf文件夹中,服务器/opt/redisGo/conf文件中有redis.conf,自己放进去的
2: redis-server /etc/redis/conf/redis.conf 以配置文件启动redis,加载容器内的conf文件
进入redis.conf中找到bind 127.0.0.1 -::1 ,外网需要访问即可注释
进入redis.conf中找到requirepass foobared 密码配置项requirepass 123456789
6、打包go-zero项目(进入到启动文件中main.go),然后运行
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o dist/service service.go
注:如果amd64不可以正常执行。可以换成386
CGO_ENABLED=0 GOOS=linux GOARCH=386 go build -ldflags "-s -w" -o dist/service service.go
会在dist文件下生成一个service的可执行文件,然后将环境的配置文件放在一起,一起上传至服务器上
7、安装nohup
yum install util-linux
8、进入目录,运行
nohup ./service -f service-api.yaml
9、停止服务(grep 后面跟着的是。nohup运行时的命令)
ps aux | grep './service -f service-api.yaml'
运行个两次 有一个一直不变的 那个就是pid
然后执行
kill -9 pid
搞定收工
更多推荐
所有评论(0)