前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【模板】Hexo Docker Nginx 个人博客服务器部署

【模板】Hexo Docker Nginx 个人博客服务器部署

作者头像
杨丝儿
发布2023-05-01 11:00:10
4700
发布2023-05-01 11:00:10
举报
文章被收录于专栏:杨丝儿的小站杨丝儿的小站

🤖 TLDR By ChatGPT

本指南提供了在服务器上设置Git仓库、将本地Hexo页面推送到服务器仓库、在服务器上创建Nginx配置文件以及在服务器上运行Nginx容器的方法。

  • 在服务器上的指定路径下运行git init初始化Git仓库。
  • 参考Easy Hexo指南,使用提供的配置将本地Hexo页面推送到服务器仓库。
  • 提供的配置在服务器上创建Nginx配置文件,包括MIME类型、日志、SSL和HTTP和HTTPS的服务器块。
  • 使用官方Docker镜像在服务器上运行Nginx容器。使用docker pull nginx拉取镜像,然后使用提供的命令运行容器。

请确保用适当的值替换所有<todo: comment>占位符。


There are several <todo: comment> need to be replaced.

✨Initialise git repository on server

代码语言:javascript
复制
cd <todo: the path for repository>

git init

✨Push local hexo pages to server repository

Reference: 部署 Hexo | Easy Hexo 👨‍💻

代码语言:javascript
复制
# Deployment
## ✨Docs: https://hexo.io/docs/one-command-deployment
deploy:
  - type: git
    repo: <todo: server user name>@<todo: server address>:<todo: server git repo absolute path>
    branch: <todo: the branch will push>

✨Create nginx config file on server

代码语言:javascript
复制
user  nginx;
worker_processes  auto;

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

events {
    worker_connections  1024;
}

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

    # Set up logging
    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;

    # SSL configuration
    ssl_certificate /etc/nginx/ssl.pem;
    ssl_certificate_key /etc/nginx/ssl.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";

    # HTTP server block to redirect to HTTPS
    server {
        listen 80;
        server_name <todo: server name>;
        return 301 https://$host$request_uri;
    }

    # HTTPS server block for the site
    server {
        listen 443 ssl http2;
        server_name <todo: server name>;

        root /usr/share/nginx/html;
        index index.html;

        # Set up SSL
        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:10m;
        ssl_session_tickets off;
        ssl_stapling on;
        ssl_stapling_verify on;
        resolver 1.1.1.1 1.0.0.1 8.8.8.8 valid=300s;
        resolver_timeout 5s;

        # Set up access logs
        access_log /var/log/nginx/access.log main;

        # Set up location for static files
        location / {
            try_files $uri $uri/ =404;
        }
    }
}

✨Run nginx container on server

Reference: nginx - Official Image | Docker Hub

代码语言:javascript
复制
# pull nginx docker image
docker pull nginx
代码语言:javascript
复制
docker run \
    --name <todo: container name> \
    -v <todo: html path>:/usr/share/nginx/html:ro \
    -v <todo: nginx.conf path>:/etc/nginx/nginx.conf:ro \
    -v <todo: ssl key path>:/etc/nginx/ssl.key:ro \
    -v <todo: ssl pem path>:/etc/nginx/ssl.pem:ro \
    -p 80:80 \
    -p 443:443 \
    -d nginx

END.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🤖 TLDR By ChatGPT
  • ✨Initialise git repository on server
  • ✨Push local hexo pages to server repository
  • ✨Create nginx config file on server
  • ✨Run nginx container on server
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档