在ECS上部署golang 服务(web可以访问)

300 阅读1分钟

要求:

  • Go 1.8 or newer

Clone the repository:

这边选用最简单的go web服务caddy

git clone "github.com/caddyserver…"

编译

cd caddy/cmd/caddy/

go build

运行

  • 在当前目录 (caddy/cmd/caddy/)下面,打开console1

    touch caddy.json

    vim ./caddy.json 把以下内容复制

{ "apps": { "http": { "servers": { "example": { "listen": [ ":2015" ], "routes": [ { "handle": [ { "handler": "static_response", "body": "Hello, world!" } ] } ] } } } } }

##注意格式,结尾不要多余的空格 可以用vscode格式化

  • 打开另一个console2,到当前目录 (caddy/cmd/caddy/)下面,运行 ./caddy run
  • 在consolez中运行以下命令上传配置文件 curl localhost:2019/load \ -X POST \ -H "Content-Type: application/json" \ -d @caddy.json

可以看到console1里面有收到文件。之后再console2中输入curl localhost:2019/config/

会有以下回复

{"apps":{"http":{"servers":{"example":{"listen":[":2015"],"routes":[{"handle":[{"body":"Hello, world!","handler":"static_response"}]}]}}}}}

继续再console2里面输入

curl localhost:2015 #因为配置文件里面listen端口是2015

会出来Hello, world!

ECS 防火墙,打开端口2015不是2019

本地浏览器输入ECS公网地址,就会返回Hello, world!

查看端口

netstat -antup | grep 9980