使用
启动服务是一种很好的做法CMD ["/go/bin/myapp"]
而不是
CMD /go/bin/myapp
第一种方式,SIGTERM被应用程序捕获,而在第二种方式中,它们被底层/bin/sh
脚本捕获,它不会将它们转发给服务。我是从https://forums.docker.com/t/docker-run-cannot-be-killed-with-ctrl-c/13108/2了解到的。
我很难将以下CMD
命令重写为CMD [ ...]
语法:
CMD /bin/sh -c "envsubst < /etc/nginx/conf.d/site.template > /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
我尝试了几种替代方案但仍然遇到语法错误。我怎样才能做到这一点?这可能是tini
(https://github.com/krallin/tini)的应用吗?