go-zero 非k8s单体服务上线流程

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镜像

Go 复制代码
docker pull redis:latest

5、安装redis容器(同样的文件要建好) redis.conf文件下载

Go 复制代码
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),然后运行

Go 复制代码
GOOS=linux GOARCH=amd64 go build -o dist/service service.go

会在dist文件下生成一个service的可执行文件,然后将环境的配置文件放在一起,一起上传至服务器上

7、安装nohup

Go 复制代码
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

搞定收工

相关推荐
怀君3 分钟前
Flutter——数据库Drift开发详细教程之迁移(九)
数据库·flutter
周杰伦的稻香3 分钟前
mysql_multi多实例管理
数据库·mysql
kk在加油12 分钟前
Redis基础数据结构
数据结构·数据库·redis
只有干货21 分钟前
dexie 前端数据库封装
数据库
HardCodeV1 小时前
NestJS
数据库·oracle
花好月圆春祺夏安1 小时前
基于odoo17的设计模式详解---备忘模式
数据库·设计模式
有想法的py工程师2 小时前
PostgreSQL 查询库中所有表占用磁盘大小、表大小
数据库·postgresql
R_AirMan3 小时前
深入浅出Redis:一文掌握Redis底层数据结构与实现原理
java·数据结构·数据库·redis
Hello.Reader3 小时前
RedisJSON 内存占用剖析与调优
数据库·redis·缓存
wkj0014 小时前
php 如何通过mysqli操作数据库?
android·数据库·php