Home >Operation and Maintenance >Docker >Let you understand how to install Nginx and build a static server based on Docker

Let you understand how to install Nginx and build a static server based on Docker

WBOY
WBOYforward
2022-02-15 17:50:022317browse

This article brings you relevant knowledge about how to install Nginx to build a static server based on docker. It is very common to use nginx as a static server. The following is mainly Let’s talk about installing and managing our nginx through docker, and configuring the ssl certificate to enable HTTPS access. I hope it will be helpful to everyone.

Let you understand how to install Nginx and build a static server based on Docker

Everyone needs a server. The static server configuration requirements are not very high. We recommend 1 core 2G and above.

1. Install Docker

##linuxThe server uses curl to download the quick installation shellscript

curl -fsSL get.docker.com -o get-docker.sh
After the download is completed, you can check it with the

ls command. If it already exists, use the sh command to execute this script

sh get-docker.sh
Note that if you are not a

root user, you need to use sudo su to obtain super administrator privileges .

After the installation is complete, start it

Docker Server

systemctl start docker
Use the

docker version command to see Client and Server is started successfully.

2. Use Docker to install Nginx

1. Run nginx first to copy the configuration file in the container to the local

docker run -d -p 80:80 --name nginx \
 -v /home/nginx/html:/usr/share/nginx/html \
 -v /home/nginx/logs:/var/log/nginx \
 nginx:latest

2. Copy the configuration file in the container to the local

docker container cp nginx:/etc/nginx /home/nginx/
cd /home/nginx
mv nginx conf

3. Delete the previous container

docker stop nginx
docker rm nginx

4. Run the new container according to the local configuration file

docker run -d -p 80:80 -p 443:443 --name nginx \
 -v /home/nginx/conf:/etc/nginx \
 -v /home/nginx/logs:/var/log/nginx \
 -v /home/nginx/html:/usr/share/nginx/html \
 nginx:latest

If no configuration is required

sslCertificate enabledhttpsAccess, you can use this nginx as an ordinary static server at this time.

Several folders in

/home/nginx:

conf: nginx configuration file, specific For configuration, please see the official website

html: Put static resources, such as html, css, js, etc.

logs: Logs folder, the access logs can be viewed in it

If the configuration file is changed, remember to restart

nginx throughdocker restart nginx.

3. Configure the SSL certificate to enable HTTPS access

1. Apply for an SSL certificate from the cloud service provider

I applied for it from

Tencent CloudSSL Certificate, after submitting the application information, a txt type of domain name resolution will be configured, and then wait for approval.

After the application is approved, download the

nginx server type certificate.

Let you understand how to install Nginx and build a static server based on Docker

2. Unzip the certificate and upload it to the certificate folder

Create

cert## in conf/conf.d #Certificate folder<pre class="brush:php;toolbar:false">cd /home/nginx/conf/conf.d mkdir cert</pre>Upload the certificate you just downloaded to this folder

3. Modify nginx configuration to enable HTTPS access

vi /home/nginx/ conf/conf.d/default.conf

Write the following content

server {
    #SSL 访问端口号为 443
    listen 443 ssl;
    #填写绑定证书的域名
    server_name 0101.ml;
    #证书文件名称
    ssl_certificate /etc/nginx/conf.d/cert/0101.ml_bundle.pem;
    #私钥文件名称
    ssl_certificate_key /etc/nginx/conf.d/cert/0101.ml.key;
    ssl_session_timeout 5m;
    #请按照以下协议配置
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;
    location / {
    #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
        root /usr/share/nginx/html;
        index  index.html index.htm;
    }
}

server {
        listen 80;
        #填写绑定证书的域名
        server_name falser.top;
        #把http的域名请求转成https
        return 301 https://$host$request_uri;
}

What needs to be changed:

server_name

: Change to Own domain name (two places)

ssl_certificate

: .crt Certificate file with suffix

ssl_certificate_key

: Certificate private key file with .key suffix Recommended study: "

docker video tutorial

"

The above is the detailed content of Let you understand how to install Nginx and build a static server based on Docker. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:csdn.net. If there is any infringement, please contact admin@php.cn delete