[ go-zero实战项目部署完整版 ]


go-zero微服务docker-compose部署完整版

演示git项目地址

一.前置条件

1. 安装go

2. git拉取代码

1. 创建文件夹go-weixin-obj
bin, pkg, src

2. 在src中执行
git clone xxx

3. 环境变量

export GOPATH='/xxx/go-weixin-obj/'

export CGO_ENABLED='0'

二.开始部署

1.docker-compose.yml

version: "3.0"
services:
  userrpc:
    hostna

< Read more >

[ go项目在linux-debian编译,在alpine运行 ]


1.在debian系统中执行

export CGO_ENABLED=0

2. 在重新执行build编译

go build -o xxxx

3. dockerfile - rpc服务

FROM docker.io/alpine

WORKDIR /code/app/

COPY . .

COPY Shanghai /usr/share/zoneinfo/Asia/Shanghai

EXPOSE 8081

CMD ["/code/app/MusicRpcServer"]

4. 运行docker

查看images镜像

docker run -d -p 8081

< Read more >

[ fastapi使用sqlalchemy+mysql ]


sqlalchemy中使用mysql

一.依赖安装

第三方包

pip install sqlalchemy
pip intalll pymysql

二.在fastapi中使用

databases.py文件 1. engine创建连接 2. sessionlocal为获取连接 3. Base用来映射数据库表

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

SQLALCHE

< Read more >

[ go-zero消息中间件[消息队列,定时任务] ]


前置条件

安装中间价 1. kafka+zookeeper消息队列 2. Beanstalks(要求至少2个)+redis定时任务

消息队列api服务目录结构

:.
│  table.api
│  table.go
│
├─etc
│      table-api.yaml
│
└─internal
    ├─config
    │      config.go
    │
    ├─handler
    │      routes.go
    │      tablehandler.go
    │
    ├─logic
    │      tablelogic.go
    

< Read more >

[ ip代理池 ]


python的免费ip代理池

GIT-HUB地址

1. 拉取代码

2. 修改docker-compose.yml文件内容为(指定自己的redis)

version: "3"
services:
  proxypool:
    image: "germey/proxypool:master"
    container_name: proxypool
    ports:
      - "5555:5555"
    restart: always
    environment:
      PROXYPOOL_REDIS_HOS

< Read more >

[ go-zero权限管理 ]


权限管理

先创建一个表

1. tablemodel.go

package model

import "time"

// 保存所有表

type TablesModel struct {
    Id       int64
    Name     string    `xorm:"varchar(64) notnull 'name' comment('表名')"`
    Url      string    `xorm:"varvhar(64) notnull 'url' comment(

< Read more >