Skip to content
Snippets Groups Projects
Commit 79d82d2f authored by 한동현's avatar 한동현
Browse files

feat: Nginx API 엔드포인트 추가

parent cbcbb83f
Branches
No related tags found
No related merge requests found
......@@ -14,6 +14,8 @@ RUN pnpm run build
FROM nginx:stable-alpine
RUN apk add --no-cache fcgiwrap spawn-fcgi
COPY rootfs/ /
COPY --from=build /app/dist /app/frontend
......@@ -25,6 +27,8 @@ ENV PUID=${PUID}
ENV PGID=${PGID}
RUN chmod +x /docker-entrypoint.sh
RUN chmod +x /usr/lib/nginx-api/reload.sh
RUN chmod +x /usr/lib/nginx-api/test.sh
EXPOSE 80 81 443
......
......@@ -4,6 +4,7 @@ set -e
# Create necessary directories
mkdir -p /data/custom_ssl /data/logs /data/access /data/nginx /data/letsencrypt-acme-challenge /data/nginx/default_host /data/nginx/default_www /data/nginx/proxy_host /data/nginx/redirection_host /data/nginx/stream /data/nginx/dead_host /data/nginx/temp
mkdir -p /etc/letsencrypt /run/nginx /tmp/nginx/body /var/log/nginx /var/lib/nginx/cache/public /var/lib/nginx/cache/private /var/cache/nginx/proxy_temp
mkdir -p /var/run
# Set proper permissions
chown -R ${PUID:-1000}:${PGID:-1000} /data
......@@ -13,6 +14,7 @@ chown -R ${PUID:-1000}:${PGID:-1000} /tmp/nginx
chown -R ${PUID:-1000}:${PGID:-1000} /var/cache/nginx
chown -R ${PUID:-1000}:${PGID:-1000} /var/lib/nginx
chown -R ${PUID:-1000}:${PGID:-1000} /var/log/nginx
chown -R ${PUID:-1000}:${PGID:-1000} /var/run
# Execute the main command
spawn-fcgi -s /var/run/fcgiwrap.socket -M 766 /usr/bin/fcgiwrap &
exec "$@"
......@@ -48,6 +48,25 @@ http {
default http;
}
# Nginx api endpoints
server {
listen 8081;
listen [::]:8081;
server_name nginx-api;
location /nginx-api/reload {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_param SCRIPT_FILENAME /usr/lib/nginx-api/reload.sh;
}
location /nginx-api/test {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_param SCRIPT_FILENAME /usr/lib/nginx-api/test.sh;
}
}
# Files generated by Proxy Manager
include /etc/nginx/conf.d/*.conf;
include /data/nginx/proxy_host/*.conf;
......
#!/bin/sh
output=$(nginx -s reload 2>&1)
status=$?
if [ $status -eq 0 ]; then
echo "Status: 200 OK"
echo "Content-Type: text/plain"
echo ""
echo "$output"
else
echo "Status: 500 Internal Server Error"
echo "Content-Type: text/plain"
echo ""
echo "$output"
fi
\ No newline at end of file
#!/bin/sh
output=$(nginx -t 2>&1)
status=$?
if [ $status -eq 0 ]; then
echo "Status: 200 OK"
echo "Content-Type: text/plain"
echo ""
echo "$output"
else
echo "Status: 500 Internal Server Error"
echo "Content-Type: text/plain"
echo ""
echo "$output"
fi
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment