From 6c06d9fb6a5e2d2a5cdf770b7a29ffdfe2a59b1b Mon Sep 17 00:00:00 2001 From: hxsf Date: Fri, 24 Jul 2020 13:36:33 +0800 Subject: [PATCH] add new DockerFile and docker-compose example --- .dockerignore | 95 ++++++++++++++++++++++++++++++++++++++ docker/Dockerfile | 17 +++++-- docker/docker-compose.yaml | 11 +++++ docker/entrypoint.sh | 10 ++++ 4 files changed, 130 insertions(+), 3 deletions(-) create mode 100644 .dockerignore create mode 100644 docker/docker-compose.yaml create mode 100755 docker/entrypoint.sh diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..2f1a185 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,95 @@ +/docker +!/docker/entrypoint.sh +# Created by https://www.toptal.com/developers/gitignore/api/osx,linux,windows,visualstudiocode,composer +# Edit at https://www.toptal.com/developers/gitignore?templates=osx,linux,windows,visualstudiocode,composer + +### Composer ### +composer.phar +/vendor/ + +# Commit your application's lock file https://getcomposer.org/doc/01-basic-usage.md#commit-your-composer-lock-file-to-version-control +# You may choose to ignore a library lock file http://getcomposer.org/doc/02-libraries.md#lock-file +# composer.lock + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### OSX ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# End of https://www.toptal.com/developers/gitignore/api/osx,linux,windows,visualstudiocode,composer diff --git a/docker/Dockerfile b/docker/Dockerfile index 9775c86..becf86e 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,3 +1,14 @@ -FROM php:7.4-fpm -EXPOSE 9000 -WORKDIR /var/www \ No newline at end of file +FROM composer:1.10.9 + +ENV TZ Asia/Shanghai +ENV cron="0 */1 * * *" + +COPY . /IYUU +COPY ./docker/entrypoint.sh /entrypoint.sh + +WORKDIR /IYUU + +RUN apk add --no-cache bash tzdata \ + && composer i + +ENTRYPOINT [ "/entrypoint.sh" ] diff --git a/docker/docker-compose.yaml b/docker/docker-compose.yaml new file mode 100644 index 0000000..0bd7ff5 --- /dev/null +++ b/docker/docker-compose.yaml @@ -0,0 +1,11 @@ +version: "2.3" +services: + app: + image: hxsf/iyuuautoreseed + network_mode: host + environment: + - cron=0 * * * * + volumes: + - ./config:/IYUU/config + - ./torrent:/IYUU/torrent + restart: always diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh new file mode 100755 index 0000000..9c87da8 --- /dev/null +++ b/docker/entrypoint.sh @@ -0,0 +1,10 @@ +#!/bin/bash +DEFAULT_CRON="0 */1 * * *" +cron=${cron:-$DEFAULT_CRON} +set -e + +echo "$cron /usr/local/bin/php /IYUU/iyuu.php" | crontab - + +/usr/local/bin/php /IYUU/iyuu.php + +/usr/sbin/crond -f