NockyGo

爱代码,爱生活

mac下安装sshpass

$ brew install https://raw.githubusercontent.com/kadwanev/bigboybrew/master/Library/Formula/sshpass.rb

$ cd /usr/local/bin

$ ln -s sshpass ../Cellar/sshpass/1.05/bin/sshpass

deploy.sh

1
2
3
4
5
6
7
8
9
10
#!/usr/bin/env bash
password="xxxxx"
echo 'update code'
echo 'pack'
cd $GOPATH/src/learnbeego/blog/
bee pack -be GOOS=linux
echo 'upload'
sshpass -p $password scp blog.tar.gz root@test.com:/var/www/html/blog
echo 'restart'
sshpass -p $password ssh root@test.com "cd ~ && ./restart.sh"

restart.sh

1
2
3
4
5
6
#! /bin/bash
#默认进入的是登录用户的目录
cd /var/www/html/blog
tar -xzvf blog.tar.gz
#remove conf of dev
systemctl restart blog.service

服务器使用systemd 部署

$ nano /etc/systemd/system/dd-bi-go.service

1
2
3
4
5
6
7
8
9
10
11
12
[Unit]
Description=blog
After=blog.service
[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/var/www/html/blog
ExecStart=/var/www/html/blog/blog
Restart=always
[Install]
WantedBy=multi-user.target

$ systemctl start blog.service即可

重新加载配置文件

$ sudo systemctl daemon-reload

重启相关服务

$ sudo systemctl restart foobar

只需要在go.mod 后面假如replace即可解决,加完记得go mod tidy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
replace (
cloud.google.com/go => github.com/googleapis/google-cloud-go v0.34.0
github.com/go-tomb/tomb => gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7
go.opencensus.io => github.com/census-instrumentation/opencensus-go v0.19.0
go.uber.org/atomic => github.com/uber-go/atomic v1.3.2
go.uber.org/multierr => github.com/uber-go/multierr v1.1.0
go.uber.org/zap => github.com/uber-go/zap v1.9.1

golang.org/x/crypto => github.com/golang/crypto v0.0.0-20181001203147-e3636079e1a4
golang.org/x/lint => github.com/golang/lint v0.0.0-20181026193005-c67002cb31c3
golang.org/x/net => github.com/golang/net v0.0.0-20180826012351-8a410e7b638d
golang.org/x/oauth2 => github.com/golang/oauth2 v0.0.0-20180821212333-d2e6202438be
golang.org/x/sync => github.com/golang/sync v0.0.0-20181108010431-42b317875d0f
golang.org/x/sys => github.com/golang/sys v0.0.0-20181116152217-5ac8a444bdc5
golang.org/x/text => github.com/golang/text v0.3.0
golang.org/x/time => github.com/golang/time v0.0.0-20180412165947-fbb02b2291d2
golang.org/x/tools => github.com/golang/tools v0.0.0-20181219222714-6e267b5cc78e
google.golang.org/api => github.com/googleapis/google-api-go-client v0.0.0-20181220000619-583d854617af
google.golang.org/appengine => github.com/golang/appengine v1.3.0
google.golang.org/genproto => github.com/google/go-genproto v0.0.0-20181219182458-5a97ab628bfb
google.golang.org/grpc => github.com/grpc/grpc-go v1.17.0
gopkg.in/alecthomas/kingpin.v2 => github.com/alecthomas/kingpin v2.2.6+incompatible
gopkg.in/mgo.v2 => github.com/go-mgo/mgo v0.0.0-20180705113604-9856a29383ce
gopkg.in/vmihailenco/msgpack.v2 => github.com/vmihailenco/msgpack v2.9.1+incompatible
gopkg.in/yaml.v2 => github.com/go-yaml/yaml v0.0.0-20181115110504-51d6538a90f8
labix.org/v2/mgo => github.com/go-mgo/mgo v0.0.0-20160801194620-b6121c6199b7
launchpad.net/gocheck => github.com/go-check/check v0.0.0-20180628173108-788fd7840127
)

一键解决这个问题

export GOPROXY=https://goproxy.io 或者国内 https://goproxy.cn
export GO111MODULE=on

0%