使用Docker部署PDF多功能工具Stirling-PDF

发布时间:2024年01月09日

?1.服务器上安装docker

安装比较简单,这种安装的Docker不是最新版本,不过对于学习够用了,依次执行下面命令进行安装。

sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker

查看是否安装成功

$ docker -v
Docker version 17.12.1-ce, build 7390fc6

Docker启动与停止
安装完成Docker后,默认已经启动了docker服务,如需手动控制docker服务的启停,可执行如下命令:

启动docker

sudo service docker start

停止docker?

sudo service docker stop

重启docker

sudo service docker restart

或者是

systemctl restart docker

2、配置服务器的nginx反向代理,使用域名访问。

我使用的是腾讯云服务器。首先要确认服务器上面已经开通8080这个端口。

nginx配置文件内容如下:

#user  nobody;
worker_processes  auto;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       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  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;

    gzip  on;

    server {
        listen       80;
        server_name  xxxxxxx.com;  # 这里是你的域名

        client_max_body_size 200M;  # 修改文件大小的限制,你的网站能够处理的文件的最大限制

        #charset koi8-r;
        #access_log  logs/host.access.log  main;

        location / {
            #把http的域名请求转成https
            return 301 https://$host$request_uri;
        }
        #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;
        }
    }

    # HTTPS server
    server {
        listen       443 ssl;
        server_name  xxxxxxx.com;  # 这里是你的域名

        client_max_body_size 200M;  # 修改文件大小的限制,你的网站能够处理的文件的最大限制

        # 支持跨域
        add_header 'Access-Control-Allow-Origin' '*' always;
        add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,access-control-allow-origin,Token,Authorization';
        add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,HEAD,PATCH';
        add_header 'Access-Control-Allow-Credentials' 'true';

        ssl_certificate      xxxxxxxxxxxxxx;  # 这里是你的域名证书文件
        ssl_certificate_key  xxxxxxxxxxxxxx;  # 这里是你的域名证书文件

        # ssl_session_cache    shared:SSL:1m;
        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 / {
            proxy_pass http://127.0.0.1:8080;     # 这里是8080端口
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_ssl_verify off;
            proxy_ssl_session_reuse on;
        }
    }
}

3、拉取Stirling-PDF的docker镜像

docker pull https://hub.docker.com/r/frooodle/s-pdf

4、执行docker命令创建容器

docker run -p 8080:8080 frooodle/s-pdf

5、在浏览器上面输入你的域名就可以访问了。

文章来源:https://blog.csdn.net/xiaozhidian/article/details/135484745
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。