Skip to content

Latest commit

 

History

History
85 lines (81 loc) · 2.4 KB

编译网关.md

File metadata and controls

85 lines (81 loc) · 2.4 KB

Install micro

pwd=`pwd`
tempdir=`mktemp -d /tmp/tmpd.XXXXXX`
git clone --branch v2.9.3 https://hub.fastgit.org/micro/micro.git $tempdir/micro
git clone https://hub.fastgit.org/2637309949/gmt.git $tempdir/gmt
cd $tempdir/micro
cp -rf ../gmt/comm . 
rm comm/go.mod comm/go.sum 
sed -i "s/comm\//github.com\/micro\/micro\/v2\/comm\//g" `find comm -name "*.go" | xargs grep "comm\/" -rl`
cat > main.go <<EOF
package main

import (
	"github.com/micro/micro/v2/comm/micro/cmd"
)

func main() {
	cmd.Init()
}
EOF
cat > Dockerfile <<EOF
FROM golang:1.13-alpine
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
RUN apk --no-cache add git gcc libtool musl-dev
COPY . /
WORKDIR /
RUN go env -w GOPROXY=https://goproxy.cn,direct
RUN go build -a -installsuffix cgo -ldflags "-s -w -X github.com/micro/micro/v2/cmd.GitCommit=e60b2cac -X github.com/micro/micro/v2/cmd.GitTag=v2.9.3 -X github.com/micro/micro/v2/cmd.BuildDate=1631063201" -o micro
ENTRYPOINT ["/micro"]
EOF
go env -w GOPROXY=https://goproxy.cn,direct
go build -a -installsuffix cgo -ldflags "-s -w -X github.com/micro/micro/v2/cmd.GitCommit=e60b2cac -X github.com/micro/micro/v2/cmd.GitTag=v2.9.3 -X github.com/micro/micro/v2/cmd.BuildDate=1631063201" -o micro
cp micro $GOPATH/bin
docker build -t micro:2.9.3 .
sudo mkdir /etc/micro.d/ /data/micro -p
sudo touch /etc/micro.d/docker-compose.yaml
sudo chmod -R 777 /data/micro /etc/micro.d
sudo cat > /etc/micro.d/docker-compose.yaml <<EOF
version: "3.5"
services:
  api:
    container_name: api
    image: micro:2.9.3
    command: api
    environment:
      - MICRO_REGISTRY=consul
      - MICRO_API_NAMESPACE=go.micro
      - MICRO_API_HANDLER=api
      - MICRO_API_ADDRESS=0.0.0.0:8080
      - MICRO_REGISTRY_ADDRESS=192.168.202.128:8503
      - MICRO_REGISTER_TTL=10
      - MICRO_REGISTER_INTERVAL=5
    ports:
      - 8080:8080
    networks:
      - micro
    restart: always
  web:
    container_name: web
    image: micro:2.9.3
    command: web
    environment:
      - MICRO_REGISTRY=consul
      - MICRO_API_NAMESPACE=go.micro
      - MICRO_API_HANDLER=api
      - MICRO_API_ADDRESS=0.0.0.0:8080
      - MICRO_REGISTRY_ADDRESS=192.168.202.128:8503
      - MICRO_REGISTER_TTL=10
      - MICRO_REGISTER_INTERVAL=5
    ports:
      - 8080
    networks:
      - micro
    restart: always
networks:
  micro:
    driver: bridge
EOF
sudo docker-compose -f /etc/micro.d/docker-compose.yaml up -d