使用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、在浏览器上面输入你的域名就可以访问了。

相关推荐
Nue.js32 分钟前
Docker中最常用的一些命令
docker·容器·eureka
.5482 小时前
提取双栏pdf的文字时 输出文件顺序混乱
前端·pdf
basic_code2 小时前
Docker部署kafka集群
docker·容器·kafka
Z y..3 小时前
记:Docker部署kafka消费者注册不到问题
docker·容器·kafka
ly49834 小时前
docker--工作目录迁移
docker·容器·eureka
落非5 小时前
Ubuntu配置阿里云docker apt源
ubuntu·阿里云·docker
zhentiya6 小时前
微积分第五版课后习题答案详解PDF电子版 赵树嫄
算法·pdf
x2lab7 小时前
国产化 ARM 环境mysql-mariadb 部署
arm开发·mysql·docker·mariadb
mit6.8249 小时前
[Docker#9] 存储卷 | Volume、Bind、Tmpfs | -v/mount | MySQL 灾难恢复 | 问题
linux·运维·docker·容器·架构
qq_167401519 小时前
Docker 组添加用户,设置允许普通用户操作 docker
docker·容器