add docker

This commit is contained in:
Lee 2023-07-04 16:32:18 +01:00
parent 4f9ad17446
commit 0f35e849de
5 changed files with 103 additions and 1 deletions

25
.dockerignore Normal file

@ -0,0 +1,25 @@
**/.classpath
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/bin
**/charts
**/docker-compose*
**/compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md

13
Dockerfile Normal file

@ -0,0 +1,13 @@
FROM ubuntu:22.04
# Install dependencies
RUN apt update
RUN apt install nginx php-fpm php-gd -y
# Set up nginx
COPY ./conf/nginx.conf /etc/nginx/nginx.conf
RUN mkdir -p /var/www/html
COPY ./upload.php /var/www/html/index.php
# Start NGINX
CMD ["nginx", "-g", "daemon off;"]

50
conf/nginx.conf Normal file

@ -0,0 +1,50 @@
server {
server_name _;
listen 80;
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 8;
gzip_buffers 16 64k;
gzip_types text/plain text/html text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
root /var/www/html;
index index.html index.htm;
client_max_body_size 500M;
# TCP optimizations
tcp_nopush on;
tcp_nodelay on;
# file shit
sendfile on;
# Keep connections alive for 15 seconds
keepalive_timeout 15;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
include fastcgi_params;
}
location / {
expires 7d;
open_file_cache max=1000 inactive=60s;
open_file_cache_valid 60s;
open_file_cache_min_uses 1;
open_file_cache_errors on;
# Serve the file directly from disk
try_files $uri $uri/;
}
}

14
docker-compose.yml Normal file

@ -0,0 +1,14 @@
version: "3.4"
services:
sharex-php-uploader:
build: https://git.fascinated.cc/Fascinated/sharex-php-uploader.git
# Use this below if you want to build the image locally (you need to clone the repo first)
# build: .
# image: fascinated/sharex-php-uploader
restart: always
ports:
- 80:80
volumes:
# Where to store the uploaded files
- ./uploads:/var/www/html