{"id":48388,"date":"2025-02-08T08:20:09","date_gmt":"2025-02-08T08:20:09","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=48388"},"modified":"2025-07-12T05:38:45","modified_gmt":"2025-07-12T05:38:45","slug":"docker-run","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/docker-run\/","title":{"rendered":"Docker commands Guide &#8211; docker run with examples"},"content":{"rendered":"\n<p>Here\u2019s a <strong>complete tutorial<\/strong> on the <code>docker run<\/code> command, explaining <strong>what it does<\/strong>, how to use it, a <strong>comprehensive list of examples<\/strong>, and <strong>use cases<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>What is <code>docker run<\/code>?<\/strong><\/h2>\n\n\n\n<p><code>docker run<\/code> is the most fundamental Docker command. It creates and starts a <strong>new container<\/strong> from a Docker image. You can customize how the container runs by passing options like <strong>port mapping, volume binding, environment variables<\/strong>, and <strong>network configurations<\/strong>.<\/p>\n\n\n\n<p><strong>Key Features:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Creates and starts<\/strong> a container in one command.<\/li>\n\n\n\n<li>Can run <strong>interactive shells<\/strong>, <strong>background services<\/strong>, or <strong>one-off commands<\/strong>.<\/li>\n\n\n\n<li>Supports options for <strong>networking, resource limits, and volumes<\/strong>.<\/li>\n\n\n\n<li>Allows configuration of <strong>entry commands and arguments<\/strong> for the container.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Basic Syntax<\/strong><\/h2>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">docker<\/span> <span class=\"hljs-selector-tag\">run<\/span> <span class=\"hljs-selector-attr\">&#91;OPTIONS]<\/span> <span class=\"hljs-selector-tag\">IMAGE<\/span> <span class=\"hljs-selector-attr\">&#91;COMMAND]<\/span> <span class=\"hljs-selector-attr\">&#91;ARG...]<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\"><strong>Common Options:<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>-d<\/code>: Run the container in <strong>detached<\/strong> mode (background).<\/li>\n\n\n\n<li><code>-it<\/code>: Run the container in <strong>interactive<\/strong> mode with a <strong>TTY<\/strong> (for shells).<\/li>\n\n\n\n<li><code>--name<\/code>: Assign a <strong>custom name<\/strong> to the container.<\/li>\n\n\n\n<li><code>-p<\/code>: Map <strong>host ports<\/strong> to <strong>container ports<\/strong>.<\/li>\n\n\n\n<li><code>-v<\/code>: Mount <strong>volumes<\/strong> for persistent storage.<\/li>\n\n\n\n<li><code>-e<\/code>: Set <strong>environment variables<\/strong>.<\/li>\n\n\n\n<li><code>--rm<\/code>: Automatically remove the container after it stops.<\/li>\n\n\n\n<li><code>--network<\/code>: Connect the container to a <strong>custom network<\/strong>.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Examples of <code>docker run<\/code><\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Run a Simple Container (Foreground Mode)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">docker run ubuntu <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Hello, Docker!\"<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This runs a container using the <code>ubuntu<\/code> image and executes the <code>echo<\/code> command. The container stops immediately after printing the message.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Run a Container in Interactive Mode (Shell Access)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run -it ubuntu bash\n<\/code><\/span><\/pre>\n\n\n<p>This runs the <code>ubuntu<\/code> container and opens an interactive <code>bash<\/code> shell.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Run a Detached Container (Background Mode)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">docker<\/span> <span class=\"hljs-selector-tag\">run<\/span> <span class=\"hljs-selector-tag\">-d<\/span> <span class=\"hljs-selector-tag\">--name<\/span> <span class=\"hljs-selector-tag\">my_nginx<\/span> <span class=\"hljs-selector-tag\">-p<\/span> 8080<span class=\"hljs-selector-pseudo\">:80<\/span> <span class=\"hljs-selector-tag\">nginx<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This runs an <code>nginx<\/code> web server in the background, mapping port <strong>8080 on the host<\/strong> to <strong>port 80 in the container<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Assign a Custom Name to the Container<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run --name my_custom_name ubuntu sleep 100\n<\/code><\/span><\/pre>\n\n\n<p>This runs a container named <code>my_custom_name<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Automatically Remove the Container After It Stops<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">docker run --rm ubuntu <span class=\"hljs-keyword\">echo<\/span> <span class=\"hljs-string\">\"Temporary container\"<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The container is removed automatically once the command finishes.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>6. Run a Container with Environment Variables<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run -e ENV_VAR1=value1 -e ENV_VAR2=value2 ubuntu printenv\n<\/code><\/span><\/pre>\n\n\n<p>This sets and prints the environment variables inside the container.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>7. Bind a Host Directory as a Volume<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">docker run -v \/host\/data:<span class=\"hljs-regexp\">\/container\/<\/span>data ubuntu ls \/container\/data\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This mounts the <code>\/host\/data<\/code> directory on the host to <code>\/container\/data<\/code> in the container.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>8. Run a Container with Limited Resources (CPU and Memory)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">docker run --memory=<span class=\"hljs-string\">\"512m\"<\/span> --cpus=<span class=\"hljs-string\">\"1.0\"<\/span> ubuntu stress --vm <span class=\"hljs-number\">1<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This limits the container to <strong>512MB of RAM<\/strong> and <strong>1 CPU core<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>9. Connect a Container to a Custom Network<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker network create my_network\ndocker run --network my_network nginx\n<\/code><\/span><\/pre>\n\n\n<p>This connects the <code>nginx<\/code> container to <code>my_network<\/code>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>10. Run a Database with Persistent Storage<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">docker run -d --name my_mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -v mysql_data:<span class=\"hljs-regexp\">\/var\/<\/span>lib\/mysql mysql\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This runs a MySQL container with a persistent volume (<code>mysql_data<\/code>) to store the database files.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>11. Run a Container with Multiple Port Mappings<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"CSS\" data-shcb-language-slug=\"css\"><span><code class=\"hljs language-css\"><span class=\"hljs-selector-tag\">docker<\/span> <span class=\"hljs-selector-tag\">run<\/span> <span class=\"hljs-selector-tag\">-d<\/span> <span class=\"hljs-selector-tag\">-p<\/span> 8080<span class=\"hljs-selector-pseudo\">:80<\/span> <span class=\"hljs-selector-tag\">-p<\/span> 8443<span class=\"hljs-selector-pseudo\">:443<\/span> <span class=\"hljs-selector-tag\">nginx<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">CSS<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">css<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This maps <strong>port 8080<\/strong> and <strong>8443<\/strong> on the host to <strong>port 80<\/strong> and <strong>443<\/strong> in the container.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>12. Run a Container with Custom DNS<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run --dns=8.8.8.8 ubuntu ping google.com\n<\/code><\/span><\/pre>\n\n\n<p>This specifies <code>8.8.8.8<\/code> as the DNS server for the container.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>13. Run a Container with an Alternate Command<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run ubuntu ls \/usr\n<\/code><\/span><\/pre>\n\n\n<p>This overrides the default command for the <code>ubuntu<\/code> image and runs <code>ls \/usr<\/code> instead.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>14. Restart Policy: Always Restart the Container<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run --restart always nginx\n<\/code><\/span><\/pre>\n\n\n<p>This ensures the container restarts automatically if it stops.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>15. Run a Container in Read-Only Mode<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run --read-only ubuntu touch \/tmp\/test\n<\/code><\/span><\/pre>\n\n\n<p>This prevents the container from modifying the filesystem.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>16. Run a GUI Application in a Container (Linux)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">docker run -e DISPLAY=$DISPLAY -v \/tmp\/.X11-unix:<span class=\"hljs-regexp\">\/tmp\/<\/span>.X11-unix my-gui-app\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This runs a graphical application using the host\u2019s display.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>17. Debug a Failing Container<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">docker run -it --entrypoint \/bin\/sh my_app\n<\/code><\/span><\/pre>\n\n\n<p>This overrides the container\u2019s entrypoint to open an interactive shell for debugging.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Use Cases for <code>docker run<\/code><\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Web Servers and Microservices<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deploy web servers like <strong>NGINX<\/strong>, <strong>Apache<\/strong>, or <strong>Node.js<\/strong> in isolated containers.<\/li>\n\n\n\n<li>Run microservices with separate containers for different components (database, caching, messaging).<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Development Environments<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use containers as isolated development environments with all dependencies pre-installed.<\/li>\n\n\n\n<li>Share development environments using Docker images.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Databases and Data Persistence<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Run databases like <strong>MySQL<\/strong>, <strong>PostgreSQL<\/strong>, or <strong>MongoDB<\/strong> in containers with persistent storage volumes.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. CI\/CD Pipelines<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Automate testing and deployments by running applications in Docker containers.<\/li>\n\n\n\n<li>Use <code>docker run<\/code> to execute tests in isolated environments.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Debugging and Troubleshooting<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Open interactive shells in containers for on-the-fly debugging.<\/li>\n\n\n\n<li>Run one-off commands to inspect the container\u2019s state.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>6. Batch Processing and Background Jobs<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Run data processing jobs, background tasks, or cron jobs in containers.<\/li>\n\n\n\n<li>Example: Data extraction, transformation, and load (ETL) tasks.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>7. Network Simulation and Custom Networking<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Simulate network conditions using multiple Docker networks.<\/li>\n\n\n\n<li>Connect containers to custom networks for secure communication.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>List of Common <code>docker run<\/code> Commands<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Command<\/strong><\/th><th><strong>Description<\/strong><\/th><\/tr><\/thead><tbody><tr><td><code>docker run ubuntu echo \"Hello\"<\/code><\/td><td>Run a one-off command in an Ubuntu container<\/td><\/tr><tr><td><code>docker run -it ubuntu bash<\/code><\/td><td>Run an interactive bash shell<\/td><\/tr><tr><td><code>docker run -d --name my_nginx -p 8080:80 nginx<\/code><\/td><td>Run an NGINX web server in detached mode<\/td><\/tr><tr><td><code>docker run --rm ubuntu ls<\/code><\/td><td>Automatically remove the container after it stops<\/td><\/tr><tr><td><code>docker run -e VAR=value ubuntu printenv<\/code><\/td><td>Run with environment variables<\/td><\/tr><tr><td><code>docker run -v \/host\/data:\/container\/data ubuntu<\/code><\/td><td>Bind a host directory as a volume<\/td><\/tr><tr><td><code>docker run --cpus=1.0 --memory=512m ubuntu<\/code><\/td><td>Limit CPU and memory usage<\/td><\/tr><tr><td><code>docker run --network=my_network nginx<\/code><\/td><td>Connect to a custom network<\/td><\/tr><tr><td><code>docker run --restart always nginx<\/code><\/td><td>Set a restart policy<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Best Practices for Using <code>docker run<\/code>:<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Use <code>--rm<\/code> for one-off tasks<\/strong> to avoid accumulating stopped containers.<\/li>\n\n\n\n<li><strong>Map ports carefully<\/strong> to avoid conflicts on the host machine.<\/li>\n\n\n\n<li><strong>Use environment variables (<code>-e<\/code>)<\/strong> for configuration instead of hardcoding values.<\/li>\n\n\n\n<li><strong>Limit resources (<code>--cpus<\/code> and <code>--memory<\/code>)<\/strong> to prevent containers from consuming excessive resources.<\/li>\n\n\n\n<li><strong>Mount volumes (<code>-v<\/code>)<\/strong> for persistent storage.<\/li>\n\n\n\n<li><strong>Combine with <code>docker-compose<\/code><\/strong> for managing multi-container applications.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Common Errors and Solutions<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>&#8220;Image not found&#8221;<\/strong><br>\u2192 Ensure the image exists or pull it from Docker Hub: <code>docker pull ubuntu<\/code><\/li>\n\n\n\n<li><strong>&#8220;Port already in use&#8221;<\/strong><br>\u2192 Use a different port for the container (<code>-p 8081:80<\/code>).<\/li>\n\n\n\n<li><strong>&#8220;Permission denied&#8221;<\/strong><br>\u2192 Ensure you have the necessary permissions or run with <code>sudo<\/code>.<\/li>\n\n\n\n<li><strong>&#8220;Container cannot connect to the internet&#8221;<\/strong><br>\u2192 Check the container\u2019s network settings with <code>docker network inspect<\/code>.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here\u2019s a complete tutorial on the docker run command, explaining what it does, how to use it, a comprehensive list of examples, and use cases. What is docker run? docker&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4862],"tags":[],"class_list":["post-48388","post","type-post","status-publish","format-standard","hentry","category-docker"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48388","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=48388"}],"version-history":[{"count":2,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48388\/revisions"}],"predecessor-version":[{"id":48390,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/48388\/revisions\/48390"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=48388"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=48388"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=48388"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}