diff --git a/Dockerfile b/Dockerfile index 5cb00d7..e5fb955 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,34 +1,34 @@ -FROM alpine:3.14 +FROM alpine:3.17 LABEL maintainer="selim013@gmail.com" RUN apk add --no-cache curl \ imagemagick \ apache2 \ - php8 \ - php8-apache2 \ - php8-ctype \ - php8-curl \ - php8-dom \ - php8-ftp \ - php8-gd \ - php8-iconv \ - php8-json \ - php8-mbstring \ - php8-mysqli \ - php8-opcache \ - php8-openssl \ - php8-pgsql \ - php8-sqlite3 \ - php8-tokenizer \ - php8-xml \ - php8-zlib \ - php8-zip \ + php81 \ + php81-apache2 \ + php81-ctype \ + php81-curl \ + php81-dom \ + php81-ftp \ + php81-gd \ + php81-iconv \ + php81-json \ + php81-mbstring \ + php81-mysqli \ + php81-opcache \ + php81-openssl \ + php81-pgsql \ + php81-sqlite3 \ + php81-tokenizer \ + php81-xml \ + php81-zlib \ + php81-zip \ su-exec ### phpBB -ENV PHPBB_VERSION 3.3.4 -ENV PHPBB_SHA256 'a2436e375acf9ec8846fda82ffeda51774627967308fb3b71d395b90a1acfe8b' +ENV PHPBB_VERSION 3.3.9 +ENV PHPBB_SHA256 8eacc10caff2327d51019ed2677b55ff1afdc68a3a7aaeee9ac29747775fe04f WORKDIR /tmp @@ -48,11 +48,8 @@ RUN mkdir -p /run/apache2 /phpbb/opcache \ COPY apache2/httpd.conf /etc/apache2/ COPY apache2/conf.d/* /etc/apache2/conf.d/ - -COPY php/php.ini /etc/php7/ -COPY php/php-cli.ini /etc/php7/ -COPY php/conf.d/* /etc/php7/conf.d/ - +COPY php/php.ini php/php-cli.ini /etc/php81/ +COPY php/conf.d/* /etc/php81/conf.d COPY start.sh /usr/local/bin/ RUN chown -R apache:apache /phpbb diff --git a/docker-compose.build.yml b/docker-compose.build.yml index 839387a..1ef4013 100644 --- a/docker-compose.build.yml +++ b/docker-compose.build.yml @@ -1,4 +1,8 @@ -version: '2' +volumes: + phpbb-sqlite: {} + phpbb-files: {} + phpbb-store: {} + phpbb-avatars: {} services: phpbb: @@ -6,9 +10,9 @@ services: ports: - '127.0.0.1:8000:80' volumes: - - '/phpbb/sqlite' - - '/phpbb/www/files' - - '/phpbb/www/store' - - '/phpbb/www/images/avatars/upload' + - 'phpbb-sqlite:/phpbb/sqlite' + - 'phpbb-files:/phpbb/www/files' + - 'phpbb-store:/phpbb/www/store' + - 'phpbb-avatars:/phpbb/www/images/avatars/upload' environment: PHPBB_INSTALL: 'true' \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index cbe82d7..4d849f9 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,5 +1,3 @@ -version: '2' - volumes: phpbb-sqlite: {} phpbb-files: {} diff --git a/update.sh b/update.sh new file mode 100755 index 0000000..8f4a41b --- /dev/null +++ b/update.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +set -e + +VERSION="$1" + +if [ ! -n "$VERSION" ]; then + echo "Usage: $0 phpbb_minor_version" + echo + echo "Example: $0 3.3" + exit 1 +fi + +VERSIONS_URL="http://version.phpbb.com/phpbb/versions.json" +LATEST_VERSION=$(curl --silent --location $VERSIONS_URL | jq --raw-output ".stable[\"$VERSION\"].current") +if [ "$LATEST_VERSION" == "null" ]; then + echo "PHPBB version not found" + exit 1 +fi + +SHA_URL="https://download.phpbb.com/pub/release/3.3/$LATEST_VERSION/phpBB-$LATEST_VERSION.tar.bz2.sha256" +SHA=$(curl --silent --location $SHA_URL | cut -d ' ' -f 1) +if [ "${#SHA}" != "64" ]; then + echo "Failed to fetch SHA256 of an archive" + exit 1 +fi + +sed -i "s/^ENV PHPBB_VERSION .*$/ENV PHPBB_VERSION $LATEST_VERSION/" Dockerfile +sed -i "s/^ENV PHPBB_SHA256 .*$/ENV PHPBB_SHA256 $SHA/" Dockerfile + +echo "OK" \ No newline at end of file