<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Umar khan</title>
    <description>The latest articles on DEV Community by Umar khan (@muhammadumar123).</description>
    <link>https://dev.to/muhammadumar123</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2106383%2F6a200301-7fdb-4ce3-86d5-4a970ad0f526.png</url>
      <title>DEV Community: Umar khan</title>
      <link>https://dev.to/muhammadumar123</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/muhammadumar123"/>
    <language>en</language>
    <item>
      <title>Automatically Restart Docker Containers using systemd</title>
      <dc:creator>Umar khan</dc:creator>
      <pubDate>Sat, 21 Sep 2024 15:31:02 +0000</pubDate>
      <link>https://dev.to/muhammadumar123/automatically-restart-docker-containers-using-systemd-2f63</link>
      <guid>https://dev.to/muhammadumar123/automatically-restart-docker-containers-using-systemd-2f63</guid>
      <description>&lt;p&gt;Managing Docker containers with systemd ensures that your containers automatically start on boot, &lt;br&gt;
restart on failure, and stop gracefully. This guide will cover the setup for Nginx.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;## Step-by-Step Guide&lt;br&gt;
**&lt;/strong&gt;### 1. Running Your Docker Containers**&lt;br&gt;
First, start your Docker containers using the following commands:&lt;/p&gt;
&lt;h4&gt;
  
  
  NGIN Container
&lt;/h4&gt;

&lt;p&gt;‘’’ bash&lt;br&gt;
docker run -d --name=some-nginx nginx:latest-&lt;br&gt;
‘’’&lt;br&gt;
&lt;code&gt;-d&lt;/code&gt;: Run container in detached mode.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;--name=some-nginx&lt;/code&gt;: Name the container &lt;code&gt;some-nginx&lt;/code&gt;..
.
**### 2. Creating systemd Service Unit Files
**Create systemd service unit files for each container. This example will guide you through creating a 
service file for the NGINX container.
#### Nginx Service Unit File
Create the service file:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/systemd/system/nginx_container.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Paste the following content:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Unit]
Description=Nginx Docker Container
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStart=/usr/bin/docker start -a some-nginx
ExecStop=/usr/bin/docker stop -t 2 some-nginx
[Install]
WantedBy=default.target
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;### 3. Enabling and Starting the Services&lt;br&gt;
**&lt;/strong&gt;Enable and start the services using the following commands :&lt;br&gt;
**#### Nginx Service&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl &lt;span class="nb"&gt;enable &lt;/span&gt;nginx_container.service
&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl start nginx_container.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;**### 4. Checking Status and Logs&lt;br&gt;
**Check the status and logs of each service to ensure they are running correctly:&lt;/p&gt;

&lt;h4&gt;
  
  
  Nginx Service Status and Logs
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl status nginx_container.service
&lt;span class="nb"&gt;sudo &lt;/span&gt;journalctl &lt;span class="nt"&gt;-u&lt;/span&gt; nginx_container.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After reboot or crash of server the container automatically restar&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
