1.先启动一个nginx

docker container run -d -p 80:80 -p 443:443 --rm --name nginx nginx

--rm 停止后删除

-d 后台运行

-p 端口映射

--name 名称

2.拷贝配置文件

docker container cp nginx:/etc/nginx .
mv nginx conf

这样,就将docker中的/etc/nginx 文件夹。 copy到了当前目录下
之后,通过mv,将nginx文件夹改名为conf

这个时候,看配置文件中,就可以看到根目录/usr/share/nginx/html

3.接下来,就可以映射目录了

docker stop nginx                        # 前面--rm就保证了自动删除
docker container run -d -p 80:80 -p 443:443 \
--restart always \
-v $PWD/html:/usr/share/nginx/html \
-v $PWD/conf:/etc/nginx \
--name nginx \
nginx

备注:这里一般都需要映射2个目录:1是网站文件存储目录、2是nginx配置目录

4.后面就开始配置nginx的配置文件了

server {
    listen       80;
    server_name  localhost;

    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl http2;
    server_name localhost;

    #请填写证书文件的相对路径或绝对路径
    ssl_certificate /etc/nginx/certs/website.com_bundle.crt;

    #请填写私钥文件的相对路径或绝对路径
    ssl_certificate_key /etc/nginx/certs/website.com.key;
    ssl_session_timeout 5m;

    #请按照以下协议配置
    ssl_protocols TLSv1.2 TLSv1.3;

    #请按照以下套件配置,配置加密套件,写法遵循 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;
    }

    error_page    404        /404.html;
}

标签: Linux, docker, nginx

评论已关闭