为了账号安全,请及时绑定邮箱和手机立即绑定

始终在 Docker 容器中运行 Go http 服务器应用程序

始终在 Docker 容器中运行 Go http 服务器应用程序

Go
GCT1015 2022-12-26 10:30:20
我有一个Docker只运行我创建的二进制文件的容器,Go它是一个带有Gin框架的 http 服务器。我不使用任何其他 Web 服务器,只使用 Go 的内部 http 服务器。在我Dockerfile的文件末尾我有这个:EXPOSE 80 CMD ["/home/project/microservices/backend/engine/cmd/main"]我docker-compose用来运行容器和restart: always每个容器。它有效!但我的问题是,如果我创建的 http 服务器由于编程错误或其他原因而失败,它会重新启动吗?我怎样才能检查这个?Docker 有这方面的工具吗?我试过 go withSupervisord但它有一些问题,我没有成功运行它。我想要一个解决方法来保持容器内的 http 服务器始终运行。我能做什么?
查看完整描述

1 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

您可以尝试从主机中终止进程。使用类似的方法查找进程 ID

ps -aux | grep main

然后使用杀死它

sudo kill <process id>

然后 Docker 将重新启动它。通过使用

docker ps

您应该会看到“状态”已更改为类似 的内容Up 10 seconds


查看完整回答
反对 回复 2022-12-26
  • 1 回答
  • 0 关注
  • 76 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信