• CentOS7 Docker Hugo + CDN 域名端口无法访问的问题


    使用以下命令在docker中运行hugo遇到一个问题:ip+端口可以打开,域名+端口无法打开

    docker run -itd --rm -p 1313:1313 --name my-hugo -v $(pwd):/src klakegg/hugo server -D

    经过排查发现原因是 Cloudflare 没有开放1313端口,Cloudflare 支持的端口如下:

    1. Cloudflare 支持的 HTTP 端口:
    2. 80
    3. 8080
    4. 8880
    5. 2052
    6. 2082
    7. 2086
    8. 2095
    9. Cloudflare 支持的 HTTPS 端口:
    10. 443
    11. 2053
    12. 2083
    13. 2087
    14. 2096
    15. 8443

    稍微修改一下命令再跑:

    docker run -itd --rm -p 2086:2086 --name my-hugo -v $(pwd):/src klakegg/hugo server -D
    

    这时会报错,因为我们刚才使用 docker -v 命令将宿主机目录挂载进入容器的对应目录,所以要删除之前的容器:

    1. docker stop my-hugo
    2. docker rm my-hugo

    然后再运行刚才的命令:

    docker run -itd --rm -p 2086:2086 --name my-hugo -v $(pwd):/src klakegg/hugo server -D
    

    此时docker启动成功,输入 docker ps 查看端口是否成功映射。

    但是,此时我们输入域名还是无法访问。

    经过问题排查,我发现问题出在最后面的 server -D 命令, server -D 是 hugo 的默认访问模式,默认使用1313端口启动。

    由于我们要改成CDN开放的2086端口,所以hugo的访问端口也要修改,使用 server -p 2086命令,自定义接口访问。

    因此重复之前的步骤,先停止容器,再删除容器,再run

    1. docker stop my-hugo
    2. docker rm my-hugo
    3. docker run -itd -p 2086:2086 --name my-hugo --restart always -v $(pwd):/src klakegg/hugo server -p 2086

    运行一下,就可以成功通过域名+端口访问了。

  • 相关阅读:
    逐步理解深度信念网络
    SpringCloud gateway+zookeeper实现网关路由
    论文中英文翻译素材
    扩展-Hooks
    Redis Cluster搭建(单机搭建)
    【多AZ】浅述云计算多az
    sql各种注入案例
    20231024后端研发面经整理
    MetaGPT部分源码解读
    《安卓逆向》Magisk的编译踩坑记录-安装方法-分享魔改后的Magisk过root检测方法
  • 原文地址:https://blog.csdn.net/wl724120268/article/details/126527721