Comments (4)
Fix for docker-database here: #442
For many of the remaining dockers, a problem rears its head: multiple processes need to be started. While we can start multiple processes in a docker using supervisord, some dockers require processes to start in a specific order, however, supervisord, while providing a priority mechanism, does not provide a dependency system, so there is no native way to ensure processes start serially. Many people are clamoring for this functionality to be added here: Supervisor/supervisor#122.
In the comments of the issue I linked, one person describes their workaround:
A workaround that I have used is to set autostart=false on the processes, then create a bootstrap script with autostart=true and autorestart=false (a one-shot). The bootstrap can be a shell script that calls supervisorctl start for each process. supervisorctl start will block until a process has started successfully.
While this will work, I don't believe this is an ideal solution. Also, it appears someone has created an alternative "ordered-startup-supervisord" here: https://pypi.python.org/pypi/ordered-startup-supervisord/. I'm not sure how stable this is, however. All thoughts are welcome!
from sonic-buildimage.
do you have a list of dockers that is not currently managed by supervisor?
from sonic-buildimage.
- docker-basic_router
- docker-dhcp-relay
- docker-fpm
- docker-fpm-gobgp (Uses supervisord, but it is not started as PID 1)
- docker-lldp-sv2 (Uses supervisord, but it is not started as PID 1)
- docker-mlnx-sswsyncd
- docker-mlnx-sswsyncd-rpc
- docker-orchagent
- docker-orchagent-cavm
- docker-orchagent-centec
- docker-orchagent-mlnx
- docker-platform-monitor
- docker-saiserver-brcm
- docker-saiserver-cavm
- docker-saiserver-mlnx
- docker-snmp-sv2 (Uses supervisord, but it is not started as PID 1)
- docker-sswsyncd
- docker-teamd
- docker-vas
from sonic-buildimage.
Resolved with PR #573
from sonic-buildimage.
Related Issues (20)
- [ sFlow ] - Enabling sFlow feature causes containers to crash
- GNMI Client Auth Failed with Server Certificate Authentication Error HOT 8
- [xcvrd] CmisManagerTask does not update port mapping HOT 4
- [PINS] [P4RT] Failed to validate P4Info. PacketIO metadata not supported by P4Info. HOT 1
- BGP State Change Does not Trigger BGP State Event HOT 1
- [202405][DNX] orchagent exited because of failing to set SAI_NEIGHBOR_ENTRY_ATTR_IS_LOCAL HOT 9
- Port stats - negative rate counters after speed change HOT 3
- [Micas]platform M2-W6510 standardization by using native Linux kernel drivers HOT 1
- Telemetry Swss Events are not Triggered HOT 1
- [MCLAG L2 Scenario] Interface Mac address update fails. system mac of active dut is not same as standby
- /lib/systemd/systemd-networkd-wait-online command fails on host
- GNMI Server Needs Support for Multi-Asic For COUNTERS_DB Query
- [sonic_package_manager] Bug in sonic-installer install with package migrate
- [Smartswitch] Orchagent is crashing when the MGMT_VRF is enabled HOT 1
- RX and TX util sometimes shows util values above 100% HOT 2
- [Broadcom-DNX] Pause frames sent for Priority 0 traffic with new MMU buffer settings.
- [Broadcom-DNX] Intermittent lossless packet drop seen with Pause storm on egress port and latest MMU buffer settings.
- Gnmi Client Access Fails with Server after Rotating Telemetry Certificates HOT 4
- Missing YANG model for new added attribute related to fabric link monitoring HOT 1
- [202405] delayed ssh service start due to dependency caused by banner-config service HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sonic-buildimage.