Dockerfile не задано иное. Так вот у меня образ собран на базовом образе php-fpm в котором этот сигнал переопределён на SIGQUIT для корректного завершения воркеров. Но у меня на этом же образе крутятся деплойменты с cli командами php и там такой сигнал не корректно работает. Как я могу на уровне деплоймента определить что завершать надо именно SIGTERM, а не то что задано в Dockerfile? Неужели прийдётся билдить 2 образа?)
                  
                  
                
забилдь заново
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  неужели никак нельзя переопределить?)
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  lifecycle: preStop: exec: command: ["kill", "-SIGTERM", "1"]
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  ну это как бы как раз делает то что мне надо, и не надо иметь 2 образа которые блин ничем не отличаются кроме этого
сигналы посылает не сам куб, а container runtime, которому просто посылается StopContainerRequest в котором есть только id контейнера и таймаут. Container runtime не видит манифест, поэтому способа задать там сигнал нет.
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  то есть либо берётся дефолтный, либо тот что задан в самом контейнере?
https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/
зависит от container runtime, но думаю все поддерживают кастомный сигнал из образа
так что preStop - пожалуй самые аккуратные костыли чтобы послать другой тип сигнала
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  да, я так и хочу, а вот прогер с которым я работаю упёрся и думает что он может просто перезагрузиться от этого lifecycle: preStop: exec: command: ["kill", "-SIGTERM", "1"] Типа престоп шлёт сигнал и он успевает перезапустить до терминатинг в момент которого шлёт сигнал сам кубер
 Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                      
                      
                        
                          Владимир
                          Муковоз
                        
                      
                    
                    
                    
                    
                      Автор вопроса
                    
                    
                  .
Обсуждают сегодня