{"id":1339,"date":"2024-07-23T12:36:03","date_gmt":"2024-07-23T12:36:03","guid":{"rendered":"https:\/\/dockerpros.com\/?post_type=glossary&#038;p=1339"},"modified":"2024-07-23T12:36:03","modified_gmt":"2024-07-23T12:36:03","slug":"dockerfile-cpu-shares","status":"publish","type":"glossary","link":"https:\/\/dockerpros.com\/de\/wiki\/dockerfile-cpu-shares\/","title":{"rendered":"Dockerfile \u2013cpu-shares"},"content":{"rendered":"<h1>Understanding <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Eine Dockerfile ist ein Skript, das eine Reihe von Anweisungen zur Automatisierung der Erstellung von Docker-Images enth\u00e4lt. Sie gibt das Basis-Image, die Anwendungsabh\u00e4ngigkeiten und die Konfiguration an und erm\u00f6glicht so eine konsistente Bereitstellung \u00fcber verschiedene Umgebungen hinweg.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> <code>CPU-Anteile<\/code>: A Deep Dive into Resource Allocation<\/h1>\n<p>Docker ist ein unverzichtbares Werkzeug f\u00fcr die moderne Softwareentwicklung, insbesondere im Bereich der Containerisierung. Es erm\u00f6glicht Entwicklern unter anderem, Anwendungen nahtlos in isolierten Umgebungen zu erstellen, bereitzustellen und zu verwalten. Ein kritischer Aspekt von Docker ist das Ressourcenmanagement, das es erlaubt, Systemressourcen effektiv zwischen verschiedenen Containern zuzuteilen und zu steuern. Einer der Parameter zur Beeinflussung der CPU-Zuteilung ist <code>CPU-Anteile<\/code>. This article will provide an in-depth analysis of <code>CPU-Anteile<\/code> in Docker, covering its importance, usage, practical implications, and best practices for effective resource management.<\/p>\n<h2>What Are <code>cpu-shares<\/code>?<\/h2>\n<p>Die <code>CPU-Anteile<\/code> option in Docker is used to set the relative weight of CPU time allocated to a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. The value specified does not represent an absolute CPU limit; rather, it indicates a prioritization factor against other containers running on the same host. By default, Docker assigns a value of 1024 to all containers unless specified otherwise. A <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with a higher <code>CPU-Anteile<\/code> value will receive more CPU time compared to a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with a lower value when the system is under load.<\/p>\n<p>Zum Beispiel, wenn Sie zwei Container haben: einen mit 1024 <code>cpu-shares<\/code> and another with 512, the first <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> will receive double the CPU time of the second when CPU resources are constrained.<\/p>\n<h2>Importance of Resource Allocation in Docker<\/h2>\n<p>Effective resource allocation is crucial for maintaining the performance and stability of applications running in containers. Mismanagement can lead to performance degradation, slow response times, or even <span class=\"glossaryai-tooltip glossary-term-681\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\" target=\"_blank\">Service<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Service bezeichnet die Handlung, Unterst\u00fctzung oder Hilfe zu leisten, um spezifische Bed\u00fcrfnisse oder Anforderungen zu erf\u00fcllen. In verschiedenen Bereichen umfasst er Kundenservice, technischen Support und professionelle Dienstleistungen, wobei Effizienz und Nutzerzufriedenheit im Vordergrund stehen.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> Ausf\u00e4lle. Verstehen der Nutzung. <code>CPU-Anteile<\/code> Intelligente Skalierung kann die Gesamtleistung und Zuverl\u00e4ssigkeit Ihrer containerisierten Anwendungen erheblich verbessern.<\/p>\n<h3>Vorteile der Verwendung <code>CPU-Anteile<\/code><\/h3>\n<ol>\n<li>\n<p><strong>Feinabstimmung der Steuerung<\/strong>: By setting <code>cpu-shares<\/code>, k\u00f6nnen Sie feinabstimmen, welche Container bevorzugten Zugriff auf CPU-Ressourcen erhalten. Dies ist besonders vorteilhaft in Multi-Tenant-Umgebungen, in denen mehrere Anwendungen oder Dienste <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> parallel und um CPU-Ressourcen konkurrieren.<\/p>\n<\/li>\n<li>\n<p><strong>Dynamic Resource Management<\/strong>: <code>CPU-Anteile<\/code> allows for dynamic resource allocation based on the current load and requirements of applications. You can adjust shares according to the changing needs of your workloads, ensuring that critical applications receive the necessary resources when they need them most.<\/p>\n<\/li>\n<li>\n<p><strong>Vereinfacht <span class=\"glossaryai-tooltip glossary-term-696\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/scaling\/\" target=\"_blank\">Skalierung<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Scaling refers to the process of adjusting the capacity of a system to accommodate varying loads. It can be achieved through vertical scaling, which enhances existing resources, or horizontal scaling, which adds additional resources.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/scaling\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span><\/strong>: When deploying applications across multiple containers, having control over CPU shares simplifies <span class=\"glossaryai-tooltip glossary-term-696\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/scaling\/\" target=\"_blank\">Skalierung<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Scaling refers to the process of adjusting the capacity of a system to accommodate varying loads. It can be achieved through vertical scaling, which enhances existing resources, or horizontal scaling, which adds additional resources.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/scaling\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> operations. You can easily prioritize essential services without manually managing each container&#8217;s CPU allocation.<\/p>\n<\/li>\n<li>\n<p><strong>Verbesserte Leistung<\/strong>: By appropriately managing CPU resources, you can optimize application performance, especially for resource-intensive workloads. This leads to better user experiences and potentially higher <span class=\"glossaryai-tooltip glossary-term-681\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\" target=\"_blank\">Service<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Service bezeichnet die Handlung, Unterst\u00fctzung oder Hilfe zu leisten, um spezifische Bed\u00fcrfnisse oder Anforderungen zu erf\u00fcllen. In verschiedenen Bereichen umfasst er Kundenservice, technischen Support und professionelle Dienstleistungen, wobei Effizienz und Nutzerzufriedenheit im Vordergrund stehen.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> Verf\u00fcgbarkeit.<\/p>\n<\/li>\n<\/ol>\n<h3>Wie <code>CPU-Anteile<\/code> Werke<\/h3>\n<p>The underlying mechanism of <code>CPU-Anteile<\/code> is based on the Linux kernel&#8217;s Completely Fair Scheduler (CFS). The CFS equally divides CPU time among running processes based on their assigned shares. Therefore, the proportion of CPU time a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> receives is determined by its <code>cpu-shares<\/code> relative to all other containers on the same host.<\/p>\n<p>When containers are running without any CPU constraints, the scheduler ensures that each <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> gets a fair slice of CPU time based on its share value. If a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> is allowed to use more CPU resources than it is currently using, it can consume more as needed, ensuring that it does not starve under load.<\/p>\n<h3>Setting <code>CPU-Anteile<\/code> in einer Dockerfile<\/h3>\n<p>To set <code>cpu-shares<\/code> in einem <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Eine Dockerfile ist ein Skript, das eine Reihe von Anweisungen zur Automatisierung der Erstellung von Docker-Images enth\u00e4lt. Sie gibt das Basis-Image, die Anwendungsabh\u00e4ngigkeiten und die Konfiguration an und erm\u00f6glicht so eine konsistente Bereitstellung \u00fcber verschiedene Umgebungen hinweg.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, you would typically use the <code>docker <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span><\/code> command with the <code>CPU-Anteile<\/code> Option. Hier ist ein Beispiel:<\/p>\n<pre><code class=\"language-bash\">docker <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --cpu-shares=2048 my-container<\/code><\/pre>\n<p>In diesem Beispiel <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> named <code>my-container<\/code> erh\u00e4lt doppelt so viel CPU-Anteil wie die Standardeinstellung. Allerdings k\u00f6nnen Sie nicht festlegen <code>cpu-shares<\/code> directly within the <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Eine Dockerfile ist ein Skript, das eine Reihe von Anweisungen zur Automatisierung der Erstellung von Docker-Images enth\u00e4lt. Sie gibt das Basis-Image, die Anwendungsabh\u00e4ngigkeiten und die Konfiguration an und erm\u00f6glicht so eine konsistente Bereitstellung \u00fcber verschiedene Umgebungen hinweg.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> using a specific directive. Instead, you must configure it at runtime.<\/p>\n<h3>Practical Use Cases<\/h3>\n<h4>Scenario 1: Web Server vs. Batch Processing<\/h4>\n<p>Stellen Sie sich ein Szenario vor, in dem Sie auf demselben Host einen Webserver und eine Batch-Verarbeitungsanwendung betreiben. Der Webserver ben\u00f6tigt kurze Antwortzeiten, um eingehende Benutzeranfragen zu bearbeiten, w\u00e4hrend die Batch-Verarbeitungsanwendung l\u00e4ngere Ausf\u00fchrungszeiten tolerieren kann. In diesem Fall m\u00f6chten Sie ihr m\u00f6glicherweise eine h\u00f6here Priorit\u00e4t zuweisen. <code>cpu-shares<\/code> to the web server and lower <code>cpu-shares<\/code> to the batch processing application:<\/p>\n<pre><code class=\"language-bash\"># Start the web server <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with higher CPU shares\ndocker <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --cpu-shares=2048 web-server\n\n# Start the batch processing <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with lower CPU shares\ndocker <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> --cpu-shares=512 batch-processor<\/code><\/pre>\n<p>In dieser Konfiguration erh\u00e4lt der Webserver bei der CPU-Zuweisung eine h\u00f6here Priorit\u00e4t, um sicherzustellen, dass Benutzeranfragen schnell bearbeitet werden.<\/p>\n<h4>Szenario 2: Lasttests und Performance-Tuning<\/h4>\n<p>During load testing, you might want to simulate different loads on your application. By adjusting <code>cpu-shares<\/code>, you can monitor how your application behaves under varying levels of CPU contention. You can <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> multiple instances of your application, tweaking their CPU shares accordingly, and evaluate performance and responsiveness.<\/p>\n<h3>\u00dcberwachung der CPU-Auslastung<\/h3>\n<p>Um effektiv zu verwalten <code>cpu-shares<\/code>, ist es wichtig, die CPU-Auslastung und Leistungsmetriken zu \u00fcberwachen. Docker bietet mehrere Tools und Befehle, die dabei helfen:<\/p>\n<ul>\n<li>\n<p><strong>Docker-Statistiken<\/strong>: You can use the <code>docker stats<\/code> command to get real-time metrics on resource usage for all running containers.<\/p>\n<pre><code class=\"language-bash\">docker stats<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Leistungs\u00fcberwachungstools<\/strong>: Tools like Grafana, Prometheus, or cAdvisor can be integrated to visualize <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> metrics over time, allowing for more advanced analysis and tuning.<\/p>\n<\/li>\n<\/ul>\n<h3>Best Practices for Using <code>CPU-Anteile<\/code><\/h3>\n<ol>\n<li>\n<p><strong>Verstehen Sie Ihre Arbeitslasten<\/strong>: Before setting <code>cpu-shares<\/code>, it\u2019s imperative to analyze the nature of your workloads\u2014some may require higher priority while others can be relegated to lower shares.<\/p>\n<\/li>\n<li>\n<p><strong>Beginnen Sie mit den Standardeinstellungen<\/strong>: It\u2019s often best to start with the default <code>cpu-shares<\/code> value of 1024, then adjust based on observed performance metrics and operational requirements.<\/p>\n<\/li>\n<li>\n<p><strong>Test and Iterate<\/strong>Ressourcenmanagement ist keine einmalige Einrichtung. \u00dcberwachen Sie kontinuierlich die Anwendungsleistung und passen Sie sie an <code>cpu-shares<\/code> nach Bedarf, basierend auf Daten zur praktischen Nutzung und Leistung.<\/p>\n<\/li>\n<li>\n<p><strong>Vermeiden Sie \u00dcberbereitstellung<\/strong>: While it may be tempting to allocate high <code>cpu-shares<\/code> Um eine optimale Leistung zu gew\u00e4hrleisten, ist Vorsicht bei der \u00dcberbereitstellung geboten, da dies zu Ressourcenkonflikten f\u00fchren und die allgemeine Systemstabilit\u00e4t beeintr\u00e4chtigen kann.<\/p>\n<\/li>\n<li>\n<p><strong>Verwendung in Verbindung mit anderen Grenzwerten\n\nDie in diesem Dokument angegebenen Grenzwerte f\u00fcr die Exposition gegen\u00fcber elektromagnetischen Feldern (EMF) sind als eigenst\u00e4ndige Werte zu verstehen. Sie sollten nicht mit anderen Grenzwerten kombiniert oder addiert werden, es sei denn, dies ist ausdr\u00fccklich angegeben. Die Einhaltung dieser Grenzwerte gew\u00e4hrleistet den Schutz der Gesundheit und Sicherheit von Personen, die EMF ausgesetzt sind.<\/strong>F\u00fcr eine granularere Kontrolle \u00fcber die Ressourcenzuweisung sollten Sie die Verwendung von <code>--cpus<\/code> neben <code>CPU-Anteile<\/code>. Die <code>--cpus<\/code> setting allows you to limit the number of CPU cores available to a <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, providing a more comprehensive resource management strategy.<\/p>\n<\/li>\n<\/ol>\n<h3>Fazit<\/h3>\n<p>Die <code>CPU-Anteile<\/code> Die Option in Docker ist eine leistungsstarke Funktion zur Verwaltung der CPU-Zuteilung zwischen Containern. Indem Entwickler verstehen, wie sie funktioniert und bew\u00e4hrte Praktiken anwenden, k\u00f6nnen sie ihre containerisierten Anwendungen f\u00fcr bessere Leistung, Ressourcennutzung und Stabilit\u00e4t optimieren. In einer \u00c4ra, in der Anwendungen zunehmend in Cloud-Umgebungen und Multi-Tenant-Architekturen bereitgestellt werden, ist effektives Ressourcenmanagement nicht nur ein Vorteil, sondern eine Notwendigkeit.<\/p>\n<p>As you delve deeper into <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\" target=\"_blank\">Beh\u00e4lter<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> <span class=\"glossaryai-tooltip glossary-term-657\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/orchestration\/\" target=\"_blank\">Orchestrierung<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Orchestrierung bezieht sich auf die automatisierte Verwaltung und Koordination komplexer Systeme und Dienstleistungen. Sie optimiert Prozesse durch die Integration verschiedener Komponenten und gew\u00e4hrleistet so einen effizienten Betrieb und eine optimale Ressourcennutzung.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/orchestration\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> und das Management, die Kenntnis von Parametern wie <code>CPU-Anteile<\/code> will serve as a crucial element in the toolkit of any developer or system administrator. By taking a proactive approach to managing resources, you can ensure that your applications <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\" target=\"_blank\">laufen<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" bezeichnet einen Befehl in verschiedenen Programmiersprachen und Betriebssystemen, um ein angegebenes Programm oder Skript auszuf\u00fchren. Er initiiert Prozesse und stellt eine kontrollierte Ausf\u00fchrungsumgebung f\u00fcr die Aufgabenbereitstellung bereit.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> smoothly and efficiently, even under varying loads, ultimately leading to a better user experience and more reliable <span class=\"glossaryai-tooltip glossary-term-681\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\" target=\"_blank\">Service<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Service bezeichnet die Handlung, Unterst\u00fctzung oder Hilfe zu leisten, um spezifische Bed\u00fcrfnisse oder Anforderungen zu erf\u00fcllen. In verschiedenen Bereichen umfasst er Kundenservice, technischen Support und professionelle Dienstleistungen, wobei Effizienz und Nutzerzufriedenheit im Vordergrund stehen.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/service\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> delivery.<\/p>","protected":false},"excerpt":{"rendered":"<p>Die Option `\u2013cpu-shares` in einem <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Eine Dockerfile ist ein Skript, das eine Reihe von Anweisungen zur Automatisierung der Erstellung von Docker-Images enth\u00e4lt. Sie gibt das Basis-Image, die Anwendungsabh\u00e4ngigkeiten und die Konfiguration an und erm\u00f6glicht so eine konsistente Bereitstellung \u00fcber verschiedene Umgebungen hinweg.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> allows users to specify relative CPU shares for containers. This setting influences CPU allocation during contention, providing a way to manage resources effectively.<\/p>","protected":false},"author":1,"featured_media":1991,"parent":0,"template":"","glossary-cat":[],"class_list":["post-1339","glossary","type-glossary","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dockerfile -cpu-shares - Dockerpros<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile-cpu-shares\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dockerfile -cpu-shares - Dockerpros\" \/>\n<meta property=\"og:description\" content=\"The `--cpu-shares` option in a Dockerfile allows users to specify relative CPU shares for containers. This setting influences CPU allocation during contention, providing a way to manage resources effectively.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dockerpros.com\/de\/wiki\/dockerfile-cpu-shares\/\" \/>\n<meta property=\"og:site_name\" content=\"Dockerpros\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data1\" content=\"6\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/\",\"url\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/\",\"name\":\"Dockerfile -cpu-shares - Dockerpros\",\"isPartOf\":{\"@id\":\"https:\/\/dockerpros.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg\",\"datePublished\":\"2024-07-23T12:36:03+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg\",\"width\":800,\"height\":600,\"caption\":\"dockerfile-cpu-shares-2\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dockerpros.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glossary\",\"item\":\"https:\/\/dockerpros.com\/fr\/wiki\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Dockerfile &#8211;cpu-shares\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dockerpros.com\/#website\",\"url\":\"https:\/\/dockerpros.com\/\",\"name\":\"Dockerpros\",\"description\":\"DockerPros \u2013 Your Ultimate Docker Resource Hub\",\"publisher\":{\"@id\":\"https:\/\/dockerpros.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dockerpros.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dockerpros.com\/#organization\",\"name\":\"Dockerpros\",\"url\":\"https:\/\/dockerpros.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"width\":532,\"height\":114,\"caption\":\"Dockerpros\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dockerfile -cpu-shares - Dockerpros","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dockerpros.com\/de\/wiki\/dockerfile-cpu-shares\/","og_locale":"de_DE","og_type":"article","og_title":"Dockerfile -cpu-shares - Dockerpros","og_description":"The `--cpu-shares` option in a Dockerfile allows users to specify relative CPU shares for containers. This setting influences CPU allocation during contention, providing a way to manage resources effectively.","og_url":"https:\/\/dockerpros.com\/de\/wiki\/dockerfile-cpu-shares\/","og_site_name":"Dockerpros","og_image":[{"width":800,"height":600,"url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Gesch\u00e4tzte Lesezeit":"6\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/","url":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/","name":"Dockerfile -cpu-shares - Dockerpros","isPartOf":{"@id":"https:\/\/dockerpros.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage"},"image":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage"},"thumbnailUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg","datePublished":"2024-07-23T12:36:03+00:00","breadcrumb":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#primaryimage","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cpu-shares_1339.jpg","width":800,"height":600,"caption":"dockerfile-cpu-shares-2"},{"@type":"BreadcrumbList","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cpu-shares\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dockerpros.com\/"},{"@type":"ListItem","position":2,"name":"Glossary","item":"https:\/\/dockerpros.com\/fr\/wiki\/"},{"@type":"ListItem","position":3,"name":"Dockerfile &#8211;cpu-shares"}]},{"@type":"WebSite","@id":"https:\/\/dockerpros.com\/#website","url":"https:\/\/dockerpros.com\/","name":"Docker-Profis","description":"DockerPros \u2013 Ihr umfassender Docker-Ressourcen-Hub","publisher":{"@id":"https:\/\/dockerpros.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dockerpros.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/dockerpros.com\/#organization","name":"Docker-Profis","url":"https:\/\/dockerpros.com\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","width":532,"height":114,"caption":"Dockerpros"},"image":{"@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/glossary\/1339","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":0,"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/glossary\/1339\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/media\/1991"}],"wp:attachment":[{"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/media?parent=1339"}],"wp:term":[{"taxonomy":"glossary-cat","embeddable":true,"href":"https:\/\/dockerpros.com\/de\/wp-json\/wp\/v2\/glossary-cat?post=1339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}