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

1.服务器上安装docker

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

bash 复制代码
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker

查看是否安装成功

bash 复制代码
$ docker -v
Docker version 17.12.1-ce, build 7390fc6

Docker启动与停止

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

启动docker

bash 复制代码
sudo service docker start

停止docker

bash 复制代码
sudo service docker stop

重启docker

bash 复制代码
sudo service docker restart

或者是

bash 复制代码
systemctl restart docker

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

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

nginx配置文件内容如下:

bash 复制代码
#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镜像

bash 复制代码
docker pull https://hub.docker.com/r/frooodle/s-pdf

4、执行docker命令创建容器

bash 复制代码
docker run -p 8080:8080 frooodle/s-pdf

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

相关推荐
joker_zsl1 小时前
docker的安装和简单使用(ubuntu环境)
运维·docker·容器
啥都想学的又啥都不会的研究生2 小时前
Kubernetes in action-初相识
java·docker·微服务·容器·kubernetes·etcd·kubelet
Sherlock Ma2 小时前
PDFMathTranslate:基于LLM的PDF文档翻译及双语对照的工具【使用教程】
人工智能·pytorch·语言模型·pdf·大模型·机器翻译·deepseek
kadog3 小时前
PubMed PDF下载 cloudpmc-viewer-pow逆向
前端·javascript·人工智能·爬虫·pdf
赵我说的做_life3 小时前
基于Docker的Flask项目部署完整指南
docker·容器·flask
江畔独步4 小时前
docker容器监控&自动恢复
docker·容器·eureka
小墨宝9 小时前
js 生成pdf 并上传文件
前端·javascript·pdf
诡异森林。9 小时前
Docker--Docker网络原理
网络·docker·容器
ALex_zry10 小时前
Docker Macvlan网络配置实战:解决“network already exists“错误
网络·docker·php
IT小辉同学10 小时前
Docker如何更换镜像源提高拉取速度
spring cloud·docker·eureka