Docker installation Nginx tutorial implementation illustration

Docker installation Nginx tutorial implementation illustration

Let’s install Nginx and try it out.

Please note that images are classes and containers are objects.

View the current image

See that there is only one test image.

Pull the image:

After the download is successful, check that the image has been downloaded:

Using nginx image

Run the container:

Check the running status of the container:

Then enter the URL in your browser:

Modify the file:

[root@VM_0_4_centos bin]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
 
8bf811453641 nginx "nginx -g 'daemon of..." 4 minutes ago Up 4 minutes 0.0.0.0:80->80/tcp nginx_test

Remember the CONTAINER ID here, this is the ID of the container

Enter the container and modify:

[root@VM_0_4_centos bin]# docker exec -it 8bf811453641 /bin/bash
root@8bf811453641:/# cd /usr/share/nginx/html
root@8bf811453641:/usr/share/nginx/html# echo "hello docker">index.html
root@8bf811453641:/usr/share/nginx/html# exit

This is a check, the changes have taken effect.

If you want to stop the container:

docker stop containerId // containerId is the ID of the container
[root@VM_0_4_centos bin]# docker stop 8bf811453641

Then use docker ps to view the running status of the container.

At this point, the container is running, which is generally very simple.

The following additional mounting method first creates a directory

mkdir -p /data/nginx/{conf,conf.d,html,logs}

nginx configuration file

/data/nginx/conf/nginx.conf

user nginx;
worker_processes 1;

error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;


events {
  worker_connections 1024;
}


http {
  include /etc/nginx/mime.types;
  default_type application/octet-stream;

  log_format main '$remote_addr - $remote_user [$time_local] "$request" '
           '$status $body_bytes_sent "$http_referer" '
           '"$http_user_agent" "$http_x_forwarded_for"';

  access_log /var/log/nginx/access.log main;

  sendfile on;
  #tcp_nopush on;

  keepalive_timeout 65;

  #gzip on;

  server {
    listen 80;
    server_name localhost;

    #charset koi8-r;

    #access_log logs/host.access.log main;

    location / {
      root /usr/share/nginx/html;
      index index.html index.htm;
    }

    #error_page 404 /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
      root html;
    }

  }
  
  include /etc/nginx/conf.d/*.conf;
}

/data/nginx/conf.d/default.conf

server { 
  listen 80; 
  server_name localhost; 
 
  #charset koi8-r; 
  #access_log /var/log/nginx/log/host.access.log main; 
 
  location / { 
    #root /data/nginx/html; 
    root /usr/share/nginx/html; 
    index index.html index.htm; 
    #autoindex on; 
    #try_files $uri /index/index/page.html; 
    #try_files $uri /index/map/page.html; 
  } 
 
  #error_page 404 /404.html; 
 
  # redirect server error pages to the static page /50x.html 
  # 
  error_page 500 502 503 504 /50x.html; 
  location = /50x.html { 
    root /usr/share/nginx/html; 
  } 
 
  # proxy the PHP scripts to Apache listening on 127.0.0.1:80 
  # 
  #location ~ \.php$ { 
  # proxy_pass http://127.0.0.1; 
  #} 
 
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 
  # 
  #location ~ \.php$ { 
  #root html; 
  # fastcgi_pass 127.0.0.1:9000; 
  # fastcgi_index index.php; 
  # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 
  #include fastcgi_params; 
  #} 
 
  # deny access to .htaccess files, if Apache's document root 
  # concurs with nginx's one 
  # 
  #location ~ /\.ht { 
  # deny all; 
  #} 
}

/data/nginx/html/index.html

<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>System time</title>
</head>
<body>
<h1 id="datetime">
  <script>
    setInterval("document.getElementById('datetime').innerHTML=new Date().toLocaleString();", 1000);
  </script>
</h1>
</body>

Deleting a container

docker rm -f nginx-test

Remap the start container

docker run --name nginx-test -d -p 80:80 -v /data/nginx/html:/usr/share/nginx/html
-v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
-v /data/nginx/logs:/var/log/nginx
-v /data/nginx/conf.d:/etc/nginx/conf.d -d nginx:latest

Run again

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • How to install and configure Docker nginx
  • How to install nginx in docker and configure access via https
  • How to install Nginx in Docker
  • Install Nginx and configure port forwarding using Docker

<<:  MySQL character set viewing and modification tutorial

>>:  Vue3 compilation process-source code analysis

Recommend

5 Commands to Use the Calculator in Linux Command Line

Hello everyone, I am Liang Xu. When using Linux, ...

Implementation code of short video (douyin) watermark removal tool

Table of contents 1. Get the first link first 2. ...

How to install Android x86 in vmware virtual machine

Sometimes you just want to test an app but don’t ...

How to view the type of mounted file system in Linux

Preface As you know, Linux supports many file sys...

CSS float (float, clear) popular explanation and experience sharing

I came into contact with CSS a long time ago, but...

How to use the EXPLAIN command in SQL

In daily work, we sometimes run slow queries to r...

Detailed explanation of Linux copy and paste in VMware virtual machine

1. Linux under VMware Workstation: 1. Update sour...

Specific use of useRef in React

I believe that people who have experience with Re...

Understanding the MySQL query optimization process

Table of contents Parsers and preprocessors Query...

Pure CSS header fixed implementation code

There are two main reasons why it is difficult to...

Mini Program to implement Token generation and verification

Table of contents process Demo Mini Program Backe...

Solution to the error when calling yum in docker container

When executing yum in dockerfile or in the contai...

MySQL compressed package version zip installation configuration method

There are some problems with the compressed versi...

Several common redirection connection example codes in html

Copy code The code is as follows: window.location...