Compare commits
No commits in common. "2039f673ad469cec0f4b0a463780b94bd9823a8d" and "d9a34b5bdc0026f14b0bac49c7daf6deb5f6fd6e" have entirely different histories.
2039f673ad
...
d9a34b5bdc
@ -17,13 +17,13 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Get branch name
|
- name: Get branch name
|
||||||
id: branch-name
|
id: branch-name
|
||||||
uses: tj-actions/branch-names@v8
|
uses: tj-actions/branch-names@v7
|
||||||
|
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Restore Docker Cache
|
- name: Restore Docker Cache
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v3
|
||||||
id: docker-cache
|
id: docker-cache
|
||||||
with:
|
with:
|
||||||
path: /usr/bin/docker
|
path: /usr/bin/docker
|
||||||
@ -47,14 +47,14 @@ jobs:
|
|||||||
password: ${{ secrets.REPO_TOKEN }}
|
password: ${{ secrets.REPO_TOKEN }}
|
||||||
|
|
||||||
- name: Restore Docker Build Cache
|
- name: Restore Docker Build Cache
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v3
|
||||||
id: build-cache
|
id: build-cache
|
||||||
with:
|
with:
|
||||||
path: /tmp/.buildx-cache
|
path: /tmp/.buildx-cache
|
||||||
key: ${{ runner.os }}-buildx
|
key: ${{ runner.os }}-buildx
|
||||||
|
|
||||||
- name: Build and Push (Latest)
|
- name: Build and Push (Latest)
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v5
|
||||||
if: steps.branch-name.outputs.current_branch == 'master'
|
if: steps.branch-name.outputs.current_branch == 'master'
|
||||||
with:
|
with:
|
||||||
push: true
|
push: true
|
||||||
@ -64,7 +64,7 @@ jobs:
|
|||||||
cache-to: type=local,dest=/tmp/.buildx-cache
|
cache-to: type=local,dest=/tmp/.buildx-cache
|
||||||
|
|
||||||
- name: Build and Push (Other Branches)
|
- name: Build and Push (Other Branches)
|
||||||
uses: docker/build-push-action@v6
|
uses: docker/build-push-action@v5
|
||||||
if: steps.branch-name.outputs.current_branch != 'master'
|
if: steps.branch-name.outputs.current_branch != 'master'
|
||||||
with:
|
with:
|
||||||
push: true
|
push: true
|
||||||
|
20
Dockerfile
20
Dockerfile
@ -1,5 +1,5 @@
|
|||||||
# Stage 1: Build Nginx
|
# Stage 1: Build Nginx
|
||||||
FROM alpine:3.19.1 as builder
|
FROM alpine:3.18.5 as builder
|
||||||
|
|
||||||
# Install build dependencies and required tools
|
# Install build dependencies and required tools
|
||||||
RUN apk update && apk upgrade && \
|
RUN apk update && apk upgrade && \
|
||||||
@ -7,14 +7,12 @@ RUN apk update && apk upgrade && \
|
|||||||
|
|
||||||
# Download and build the latest version of Nginx from source
|
# Download and build the latest version of Nginx from source
|
||||||
WORKDIR /tmp
|
WORKDIR /tmp
|
||||||
RUN wget https://nginx.org/download/nginx-1.25.3.tar.gz && \
|
RUN wget https://nginx.org/download/nginx-1.25.3.tar.gz
|
||||||
tar -xzvf nginx-1.25.3.tar.gz && \
|
RUN tar -xzvf nginx-1.25.3.tar.gz
|
||||||
cd nginx-1.25.3 && \
|
WORKDIR /tmp/nginx-1.25.3
|
||||||
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/sbin/nginx --conf-path=/etc/nginx/nginx.conf && \
|
RUN ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/sbin/nginx --conf-path=/etc/nginx/nginx.conf
|
||||||
make > /dev/null 2>&1 && \
|
RUN make
|
||||||
make install > /dev/null 2>&1 && \
|
RUN make install
|
||||||
make_status=$? && \
|
|
||||||
if [ $make_status -ne 0 ]; then echo "Nginx build failed"; exit $make_status; fi
|
|
||||||
|
|
||||||
# Cleanup unnecessary files
|
# Cleanup unnecessary files
|
||||||
RUN rm -rf /tmp/*
|
RUN rm -rf /tmp/*
|
||||||
@ -25,20 +23,18 @@ COPY ./docker/nginx.conf /etc/nginx/nginx.conf
|
|||||||
# Setup scripts
|
# Setup scripts
|
||||||
COPY ./upload.php /tmp/upload.php
|
COPY ./upload.php /tmp/upload.php
|
||||||
COPY ./docker/start.sh /start.sh
|
COPY ./docker/start.sh /start.sh
|
||||||
COPY ./docker/index.html /tmp/index.html
|
|
||||||
|
|
||||||
# Copy public directory
|
# Copy public directory
|
||||||
COPY ./public /tmp/public
|
COPY ./public /tmp/public
|
||||||
|
|
||||||
# Stage 2: Create a smaller production image
|
# Stage 2: Create a smaller production image
|
||||||
FROM alpine:3.19.1
|
FROM alpine:3.18.5
|
||||||
|
|
||||||
# Copy Nginx and PHP-FPM binaries and configurations from the builder stage
|
# Copy Nginx and PHP-FPM binaries and configurations from the builder stage
|
||||||
COPY --from=builder /usr/local/nginx /usr/local/nginx
|
COPY --from=builder /usr/local/nginx /usr/local/nginx
|
||||||
COPY --from=builder /usr/local/sbin/nginx /usr/local/sbin/nginx
|
COPY --from=builder /usr/local/sbin/nginx /usr/local/sbin/nginx
|
||||||
COPY --from=builder /etc/nginx /etc/nginx
|
COPY --from=builder /etc/nginx /etc/nginx
|
||||||
COPY --from=builder /tmp/upload.php /tmp/upload.php
|
COPY --from=builder /tmp/upload.php /tmp/upload.php
|
||||||
COPY --from=builder /tmp/index.html /tmp/index.html
|
|
||||||
COPY --from=builder /start.sh /start.sh
|
COPY --from=builder /start.sh /start.sh
|
||||||
COPY --from=builder /tmp/public /tmp/public
|
COPY --from=builder /tmp/public /tmp/public
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# ShareX Uploader
|
# ShareX Upload Script
|
||||||
|
|
||||||
This PHP script allows you to easily upload ShareX screenshots and videos. It includes token authentication for security and can handle various image file types by converting them to WebP format for efficient storage.
|
This PHP script allows you to easily upload ShareX screenshots and videos. It includes token authentication for security and can handle various image file types by converting them to WebP format for efficient storage.
|
||||||
|
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>ShareX Uploader</title>
|
|
||||||
|
|
||||||
<!-- TailwindCSS -->
|
|
||||||
<script src="https://cdn.tailwindcss.com"></script>
|
|
||||||
</head>
|
|
||||||
<body
|
|
||||||
class="h-screen bg-neutral-900 text-white flex flex-col text-center items-center p-4 gap-2"
|
|
||||||
>
|
|
||||||
<p class="text-blue-400 text-4xl">ShareX Uploader</p>
|
|
||||||
<p class="text-gray-400 text-xl">Created by ImFascinated</p>
|
|
||||||
<div>
|
|
||||||
<a href="https://s.fascinated.cc/s/sharex-uploader">Source</a>
|
|
||||||
<a href="https://s.fascinated.cc/s/gitea">Gitea</a>
|
|
||||||
<a href="https://s.fascinated.cc/s/github">GitHub</a>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -44,7 +44,13 @@ http {
|
|||||||
internal;
|
internal;
|
||||||
root /tmp/public;
|
root /tmp/public;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
location /public {
|
||||||
|
root /tmp/public;
|
||||||
|
|
||||||
|
try_files $uri $uri/ =404;
|
||||||
|
}
|
||||||
|
|
||||||
# Upload endpoint
|
# Upload endpoint
|
||||||
location /upload.php {
|
location /upload.php {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
|
@ -14,14 +14,6 @@ else
|
|||||||
echo "Upload script was not found, copying it."
|
echo "Upload script was not found, copying it."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Checking if default index.html exists in /var/www/html"
|
|
||||||
if [ -f "/var/www/html/index.html" ]; then
|
|
||||||
echo "Upload script was found, ignoring copy."
|
|
||||||
else
|
|
||||||
cp /tmp/index.html /var/www/html
|
|
||||||
echo "Default index.html was not found, copying it."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Letting php know that we are running in docker
|
# Letting php know that we are running in docker
|
||||||
echo "env[DOCKER] = true" >> /etc/php81/php-fpm.d/www.conf
|
echo "env[DOCKER] = true" >> /etc/php81/php-fpm.d/www.conf
|
||||||
echo "clear_env = no" >> /etc/php81/php-fpm.d/www.conf
|
echo "clear_env = no" >> /etc/php81/php-fpm.d/www.conf
|
||||||
|
63
public/assets/tailwind.js
Normal file
63
public/assets/tailwind.js
Normal file
File diff suppressed because one or more lines are too long
@ -6,7 +6,7 @@
|
|||||||
<title>File Not Found</title>
|
<title>File Not Found</title>
|
||||||
|
|
||||||
<!-- TailwindCSS -->
|
<!-- TailwindCSS -->
|
||||||
<script src="https://cdn.tailwindcss.com"></script>
|
<script src="./assets/tailwind.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body
|
<body
|
||||||
class="h-screen bg-neutral-900 text-white flex flex-col text-center justify-center items-center p-4 gap-2"
|
class="h-screen bg-neutral-900 text-white flex flex-col text-center justify-center items-center p-4 gap-2"
|
||||||
|
Loading…
Reference in New Issue
Block a user