Skip to content
This repository has been archived by the owner on Feb 3, 2024. It is now read-only.

Commit

Permalink
Dockerfile fixed.
Browse files Browse the repository at this point in the history
  • Loading branch information
bloodhunterd committed Apr 19, 2020
1 parent 1465230 commit 7588bbf
Show file tree
Hide file tree
Showing 6 changed files with 89 additions and 53 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/.idea/
70 changes: 33 additions & 37 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
FROM debian:stable-slim

# Froxlor
ARG VERSION=0.10.15

# Time and location
ENV TZ=Europe/Berlin
ENV LOCALE="de_DE.UTF-8 UTF-8"
ENV TZ Europe/Berlin
ENV LOCALE de_DE.UTF-8 UTF-8

# PHP
ENV PHP_VERSION_OLD="7.3"
ENV PHP_VERSION="7.4"

# Froxlor
ENV FRX_VERSION="0.10.13"
# PHP versions
ENV PHP_VERSION 7.3
ENV PHP_VERSION_2 7.4

# Webserver
EXPOSE 80
EXPOSE 443

# Update and upgrade package repositories
RUN apt-get update && apt-get upgrade -y --no-install-recommends
RUN apt-get update && \
apt-get upgrade -y --no-install-recommends

# Install required packages
RUN apt-get install -y --no-install-recommends \
Expand Down Expand Up @@ -50,13 +51,11 @@ RUN apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8
# Update package repositories
RUN apt-get update

# Install NGINX, MariaDB, AWStats and Quota
# Install NGINX, MariaDB and AWStats
RUN apt-get install -y --no-install-recommends \
nginx \
mariadb-client \
awstats \
quota \
quotatool
awstats

# Configure AWStats
RUN cp /usr/share/awstats/tools/awstats_buildstaticpages.pl /usr/bin/ && \
Expand All @@ -65,26 +64,7 @@ RUN cp /usr/share/awstats/tools/awstats_buildstaticpages.pl /usr/bin/ && \
sed -i.bak 's|^\\(DirIcons=\\).*$|\\1\\"/awstats-icon\\"|' /etc/awstats//awstats.model.conf && \
rm /etc/cron.d/awstats

# Install PHP (old version)
RUN apt-get install -y --no-install-recommends \
php${PHP_VERSION_OLD} \
php${PHP_VERSION_OLD}-fpm \
php${PHP_VERSION_OLD}-common \
php${PHP_VERSION_OLD}-bcmath \
php${PHP_VERSION_OLD}-bz2 \
php${PHP_VERSION_OLD}-cli \
php${PHP_VERSION_OLD}-curl \
php${PHP_VERSION_OLD}-gd \
php${PHP_VERSION_OLD}-imap \
php${PHP_VERSION_OLD}-intl \
php${PHP_VERSION_OLD}-json \
php${PHP_VERSION_OLD}-mbstring \
php${PHP_VERSION_OLD}-mysql \
php${PHP_VERSION_OLD}-opcache \
php${PHP_VERSION_OLD}-xml \
php${PHP_VERSION_OLD}-zip

# Install PHP (current version)
# Install PHP
RUN apt-get install -y --no-install-recommends \
php${PHP_VERSION} \
php${PHP_VERSION}-fpm \
Expand All @@ -101,7 +81,23 @@ RUN apt-get install -y --no-install-recommends \
php${PHP_VERSION}-mysql \
php${PHP_VERSION}-opcache \
php${PHP_VERSION}-xml \
php${PHP_VERSION}-zip
php${PHP_VERSION}-zip \
php${PHP_VERSION_2} \
php${PHP_VERSION_2}-fpm \
php${PHP_VERSION_2}-common \
php${PHP_VERSION_2}-bcmath \
php${PHP_VERSION_2}-bz2 \
php${PHP_VERSION_2}-cli \
php${PHP_VERSION_2}-curl \
php${PHP_VERSION_2}-gd \
php${PHP_VERSION_2}-imap \
php${PHP_VERSION_2}-intl \
php${PHP_VERSION_2}-json \
php${PHP_VERSION_2}-mbstring \
php${PHP_VERSION_2}-mysql \
php${PHP_VERSION_2}-opcache \
php${PHP_VERSION_2}-xml \
php${PHP_VERSION_2}-zip

# Install additional packages
RUN apt-get install -y --no-install-recommends \
Expand Down Expand Up @@ -142,9 +138,9 @@ RUN mkdir -p /etc/ssl/froxlor

# Download Froxlor
RUN cd /var/www/ && \
wget https://files.froxlor.org/releases/froxlor-${FRX_VERSION}.tar.gz && \
tar xvfz froxlor-${FRX_VERSION}.tar.gz && \
rm froxlor-${FRX_VERSION}.tar.gz && \
wget https://files.froxlor.org/releases/froxlor-${VERSION}.tar.gz && \
tar xvfz froxlor-${VERSION}.tar.gz && \
rm froxlor-${VERSION}.tar.gz && \
chown -R froxlorlocal:froxlorlocal /var/www/froxlor/

# Add NGINX configuration
Expand Down
24 changes: 24 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.

In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.

For more information, please refer to <https://unlicense.org>
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ Docker Image of Froxlor Server Management Panel.

### Docker environment

| ENV | Values¹ | Description
|--- |--- |---
| ENV | Values¹ | Default | Description
|--- |--- |--- |---
| TZ | [PHP: List of supported timezones - Manual](https://www.php.net/manual/en/timezones.php) | Europe/Berlin | Timezone.

¹ *Possible values are separated by a slash or a range is indicated by a dash.*

Expand All @@ -27,6 +28,9 @@ Please note the [changelog](/~https://github.com/bloodhunterd/froxlor-docker/blob/
## Build With

* [Froxlor](https://froxlor.org/)
* [NGINX](https://www.nginx.com/)
* [MariaDB](https://mariadb.org/)
* [PHP](https://www.php.net/)
* [Debian](https://www.debian.org/)
* [Docker](https://www.docker.com/)

Expand Down
14 changes: 14 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: '3'

services:
ftp:
image: bloodhunterd/froxlor
environment:
- TZ: 'Europe/Berlin'
- LOCALE: 'de_DE.UTF-8 UTF-8'
volumes:
-
ports:
- 80
- 443
restart: unless-stopped
25 changes: 11 additions & 14 deletions start.sh
Original file line number Diff line number Diff line change
@@ -1,31 +1,28 @@
#!/bin/bash

# Set timezone
ln -snf "/usr/share/zoneinfo/${TZ}" etc/localtime && echo "${TZ}" > /etc/timezone && \
ln -snf "/usr/share/zoneinfo/${TZ}" etc/localtime && \
echo "${TZ}" > /etc/timezone

# Set locales
echo "${LOCALE}" >> /etc/locale.gen && locale-gen && \

# Start Quota
#service quota start && \
echo "${LOCALE}" >> /etc/locale.gen && \
locale-gen

# Start NSCD
service nscd start && \
service nscd start

# Start CRON
service cron start && \
service cron start

# Execute Froxlor's CRON job
/usr/bin/nice -n 5 /usr/bin/php -q /var/www/froxlor/scripts/froxlor_master_cronjob.php --force && \

# Start PHP-FPM (old version)
service php${PHP_VERSION_OLD}-fpm start && \
/usr/bin/nice -n 5 /usr/bin/php -q /var/www/froxlor/scripts/froxlor_master_cronjob.php --force

# Start PHP-FPM (current version)
service php${PHP_VERSION}-fpm start && \
# Start PHP-FPM
service php${PHP_VERSION}-fpm start
service php${PHP_VERSION_2}-fpm start

# Start NGINX
service nginx start && \
service nginx start

# Show log
tail -f /var/log/nginx/error.log

0 comments on commit 7588bbf

Please sign in to comment.