Spaces:
Runtime error
Runtime error
# Use Ubuntu 22.04 base image | |
FROM ubuntu:22.04 | |
# Set environment variables for configuration | |
ENV PANEL_PORT=7860 \ | |
ADMIN_USERNAME=admin \ | |
ADMIN_PASSWORD=changeme \ | |
PUFFER_DATA_DIR=/workspace/pufferpanel_data | |
# Install dependencies and clean up | |
RUN apt-get update && \ | |
apt-get install -y wget curl sqlite3 && \ | |
rm -rf /var/lib/apt/lists/* | |
# Download and install PufferPanel | |
RUN wget -q https://github.com/pufferpanel/pufferpanel/releases/download/v3.0.0-rc.14/pufferpanel_3.0.0-rc.14_amd64.deb && \ | |
dpkg -i pufferpanel_3.0.0-rc.14_amd64.deb || apt-get install -f -y && \ | |
rm pufferpanel_3.0.0-rc.14_amd64.deb | |
# Create persistent storage directories | |
RUN mkdir -p ${PUFFER_DATA_DIR}/servers \ | |
${PUFFER_DATA_DIR}/modules \ | |
${PUFFER_DATA_DIR}/cache | |
# Create config file from environment variables | |
RUN echo '{ \ | |
"web": { \ | |
"host": "0.0.0.0", \ | |
"port": '${PANEL_PORT}' \ | |
}, \ | |
"ssl": { \ | |
"enabled": false, \ | |
"redirect": false \ | |
}, \ | |
"database": { \ | |
"url": "sqlite:'${PUFFER_DATA_DIR}'/data.db", \ | |
"type": "sqlite" \ | |
}, \ | |
"data": { \ | |
"servers": "'${PUFFER_DATA_DIR}'/servers", \ | |
"modules": "'${PUFFER_DATA_DIR}'/modules", \ | |
"cache": "'${PUFFER_DATA_DIR}'/cache" \ | |
} \ | |
}' > /etc/pufferpanel/config.json | |
# Expose the panel port | |
EXPOSE ${PANEL_PORT} | |
# Start script to create admin user and run panel | |
COPY start.sh /start.sh | |
RUN chmod +x /start.sh | |
CMD ["/start.sh"] |