Compare commits

..

24 Commits

Author SHA1 Message Date
Jack
b7fe1b0bcc Update Dockerfile
All checks were successful
Build and push image / Build (push) Successful in 21m48s
2025-03-01 21:42:48 +00:00
Jack
88a7f5b5f8 Update
All checks were successful
Build and push image / Build (push) Successful in 20m17s
2024-11-12 14:30:57 +00:00
Jack
53de2d2533 Update build.yaml
Some checks failed
Build and push image / Build (push) Has been cancelled
2024-11-12 14:12:27 +00:00
Jack
1124d76045 removed ARM images (unused), Migrated php-2.2 CLI crons to the FPM image
Some checks failed
Build and push image / Build (push) Failing after 35s
2024-11-12 14:08:09 +00:00
Jack
b27aa50671 add php8.2 fpm
Some checks failed
Build and push image / Build (push) Failing after 36s
2024-07-15 11:26:11 +01:00
Jack
24f9633771 Merge branch 'main' of https://git.tgj.services/ThatGuyJack/custom-docker-containers
Some checks failed
Build and push image / Build (push) Has been cancelled
2024-07-15 11:24:11 +01:00
Jack
7727a0b4ef add php8.2 2024-07-15 11:24:09 +01:00
252abce5d3 Update php-cli/Dockerfile
Some checks failed
Build and push image / Build (push) Has been cancelled
2024-07-15 10:20:03 +00:00
Jack
96851e9a34 Update Dockerfile
Some checks failed
Build and push image / Build (push) Failing after 5m45s
2024-06-10 13:40:28 +01:00
Jack
cb862c02b3 Create petroq.service 2024-06-10 13:40:27 +01:00
Jack
d3ba31c45e Update build.yaml
All checks were successful
Build and push image / Build (push) Successful in 2h5m0s
2023-08-26 12:51:47 +01:00
Jack
e70289ec06 Update readme.md 2023-08-26 12:51:45 +01:00
Jack
a2bc8635bb E
Some checks failed
Build and push image / Build (push) Failing after 55m11s
2023-08-26 04:13:06 +01:00
Jack
9d85a8c4ed Update build.yaml
Some checks reported warnings
Build and push image / Build (push) Has been cancelled
2023-08-26 04:07:00 +01:00
Jack
45d4912452 Hrm
Some checks reported warnings
Build and push image / Build (push) Has been cancelled
2023-08-26 04:01:18 +01:00
Jack
3763dfa570 Seperate Build Jobs to speed up things
Some checks are pending
Build and push image / Build (push) Has started running
2023-08-26 03:54:47 +01:00
Jack
4ee07ab7c5 Update build.yaml
Some checks reported warnings
Build and push image / Build (push) Has been cancelled
2023-08-26 03:51:27 +01:00
Jack
6d5b7e3a2a Update build.yaml
Some checks failed
Build and push image / Build (push) Failing after 34s
2023-08-26 03:48:01 +01:00
Jack
e699967f5d Update build.yaml
Some checks failed
Build and push image / Build (push) Failing after 34s
2023-08-26 03:46:55 +01:00
Jack
7a573dd5ab Update build.yaml
Some checks failed
Build and push image / Build (push) Failing after 36s
2023-08-26 03:44:33 +01:00
Jack
bd83c46509 Update build.yaml
Some checks failed
Build and push image / Build (push) Failing after 32s
2023-08-26 03:42:54 +01:00
Jack
da7e24c9c6 test
Some checks failed
Build and push image / Build (push) Failing after 34s
2023-08-26 03:39:18 +01:00
Jack
430b4fef85 Update build-arm.yaml
All checks were successful
Build and push image / Build (push) Successful in 42s
2023-08-26 03:35:36 +01:00
Jack
ac234fcf1f Create build-arm.yaml
All checks were successful
Build and push image / Build (push) Successful in 1m15s
2023-08-26 03:33:47 +01:00
161 changed files with 9248 additions and 18 deletions

View File

@@ -13,18 +13,20 @@ jobs:
- name: Clone
run: git clone https://git.tgj.services/thatguyjack/custom-docker-containers.git .
- name: Login
run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login git.tgj.services -u thatguyjack --password-stdin
- name: Build php-FPM
run: docker build ./php-fpm/ -t git.tgj.services/thatguyjack/php-fpm:latest
- name: Build php-CLI
run: docker build ./php-cli/ -t git.tgj.services/thatguyjack/php-cli:latest
run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login https://git.tgj.services -u ThatGuyJack --password-stdin
- name: Buildx Container
run: docker buildx create --name buildx --driver=docker-container
- name: Build nginx-web
run: docker build ./nginx-web -t git.tgj.services/thatguyjack/nginx-web:latest
- name: Build motioneye
run: docker build ./motioneye -t git.tgj.services/thatguyjack/motioneye:latest
- name: Push
run: |
docker push git.tgj.services/thatguyjack/php-fpm:latest
docker push git.tgj.services/thatguyjack/php-cli:latest
docker push git.tgj.services/thatguyjack/nginx-web:latest
docker push git.tgj.services/thatguyjack/motioneye:latest
run: docker buildx build --builder=buildx --platform=linux/amd64 ./nginx-web -t git.tgj.services/thatguyjack/nginx-web:latest --push
- name: Build php-8.1-CLI
run: docker buildx build --builder=buildx --platform=linux/amd64 ./php-8-1-cli/ -t git.tgj.services/thatguyjack/php-cli:8.1 --push
- name: Build php8-1-FPM
run: docker buildx build --builder=buildx --platform=linux/amd64 ./php-8-1-fpm/ -t git.tgj.services/thatguyjack/php-fpm:8.1 --push
- name: Build php-8-2-FPM
run: docker buildx build --builder=buildx --platform=linux/amd64 ./php-8-2-fpm/ -t git.tgj.services/thatguyjack/php-fpm:8.2 --push
# - name: Push
# run: |
# docker push git.tgj.services/thatguyjack/php-fpm:latest
# docker push git.tgj.services/thatguyjack/php-cli:latest
# docker push git.tgj.services/thatguyjack/nginx-web:latest
# docker push git.tgj.services/thatguyjack/motioneye:latest

View File

@@ -1,4 +1,4 @@
FROM php:8.1-cli
FROM php:8.2-cli
# installing cron package
RUN apt-get update && apt-get -y install cron libbz2-dev curl libcurl4-openssl-dev libxml2-dev libenchant-2-dev libssl-dev libpng-dev libgmp-dev libzip-dev sudo rsync zip unzip libldap2-dev
@@ -9,6 +9,8 @@ RUN docker-php-ext-install pdo_mysql opcache gd zip ldap
COPY ./crontab /etc/cron.d/crontab
#COPY ./petroq.service /etc/systemd/system
#RUN systemctl enable --now pteroq.service
RUN chmod 0644 /etc/cron.d/crontab
RUN /usr/bin/crontab /etc/cron.d/crontab

View File

@@ -0,0 +1,20 @@
# Pterodactyl Queue Worker File
# ----------------------------------
[Unit]
Description=Pterodactyl Queue Worker
After=redis-server.service
[Service]
# On some systems the user and group might be different.
# Some systems use `apache` or `nginx` as the user and group.
User=www-data
Group=www-data
Restart=always
ExecStart=/usr/bin/php /var/www/pterodactyl/artisan queue:work --queue=high,standard,low --sleep=3 --tries=3
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s
[Install]
WantedBy=multi-user.target

View File

@@ -12,13 +12,14 @@ http {
server_names_hash_bucket_size 128;
# set_real_ip_from 172.18.0.0/16;
# set_real_ip_from fd00:0:0:0:2::/64;
real_ip_recursive on;
real_ip_header X-Forwarded-For;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
sub_filter '</head>' '<script async="" src="https://ip-update.net/ipupdate.js"></script> </head>';
sub_filter_once on;
# sub_filter '</head>' '<script async="" src="https://ip-update.net/ipupdate.js"></script> </head>';
# sub_filter_once on;
##
# Basic Settings

21
php-8-1-cli/Dockerfile Normal file
View File

@@ -0,0 +1,21 @@
FROM php:8.1-cli
RUN apt update && apt upgrade -y
# installing cron package
RUN apt-get update && apt-get -y install cron libbz2-dev curl libcurl4-openssl-dev libxml2-dev libenchant-2-dev libssl-dev libpng-dev libgmp-dev libzip-dev sudo rsync zip unzip libldap2-dev
RUN pecl install redis && docker-php-ext-enable redis
RUN docker-php-ext-install pdo_mysql opcache gd zip ldap
COPY ./crontab /etc/cron.d/crontab
#COPY ./petroq.service /etc/systemd/system
#RUN systemctl enable --now pteroq.service
RUN chmod 0644 /etc/cron.d/crontab
RUN /usr/bin/crontab /etc/cron.d/crontab
RUN adduser -D -H -u 1000 -s /bin/bash www-data -G www-data
RUN usermod -u 1000 www-data
RUN groupmod -g 1000 www-data

View File

@@ -0,0 +1,20 @@
# Pterodactyl Queue Worker File
# ----------------------------------
[Unit]
Description=Pterodactyl Queue Worker
After=redis-server.service
[Service]
# On some systems the user and group might be different.
# Some systems use `apache` or `nginx` as the user and group.
User=www-data
Group=www-data
Restart=always
ExecStart=/usr/bin/php /var/www/pterodactyl/artisan queue:work --queue=high,standard,low --sleep=3 --tries=3
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s
[Install]
WantedBy=multi-user.target

View File

@@ -2,6 +2,8 @@ FROM php:8.1-fpm-alpine
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN apk update && apk upgrade
COPY ./config/php.ini-production "$PHP_INI_DIR/php.ini-production"
COPY ./config/pool.d "$PHP_INI_DIR/"
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"

92
php-8-2-fpm/Dockerfile Normal file
View File

@@ -0,0 +1,92 @@
FROM php:8.2-fpm-alpine
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
RUN apk update && apk upgrade
COPY ./config/php.ini-production "$PHP_INI_DIR/php.ini-production"
COPY ./config/pool.d "$PHP_INI_DIR/"
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
RUN apk add --no-cache --virtual .build-deps $PHPIZE_DEPS \
&& pecl install uploadprogress \
&& docker-php-ext-enable uploadprogress \
&& apk del .build-deps $PHPIZE_DEPS \
&& chmod uga+x /usr/local/bin/install-php-extensions && sync
RUN install-php-extensions bcmath \
gmp \
bz2 \
smbclient \
calendar \
curl \
exif \
fileinfo \
ftp \
gd \
gettext \
imagick \
imap \
intl \
ldap \
mbstring \
mcrypt \
memcached \
mongodb \
mysqli \
opcache \
openssl \
pdo \
pdo_mysql \
redis \
soap \
sodium \
sysvsem \
sysvshm \
xmlrpc \
xsl \
zip \
bcmath
#RUN apk add --no-cache libnss3-dev libatk1.0-0 libatk-bridge2.0-0 libcups2 libgbm1 libpangocairo-1.0-0 libgtk-3-0
RUN apk add chromium
RUN echo -e "\n opcache.enable=1 \n opcache.enable_cli=1 \n opcache.memory_consumption=2048 \n opcache.interned_strings_buffer=1024 \n opcache.max_accelerated_files=8000 \n opcache.revalidate_freq=60 \n opcache.fast_shutdown=1" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini \
&& echo -e "\n xdebug.remote_enable=1 \n xdebug.remote_host=localhost \n xdebug.remote_port=9000" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo -e "\n xhprof.output_dir='/var/tmp/xhprof'" >> /usr/local/etc/php/conf.d/docker-php-ext-xhprof.ini \
&& cd ~ \
# Install composer
&& php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
&& php -r "copy('https://composer.github.io/installer.sig', 'signature');" \
&& php -r "if (hash_file('SHA384', 'composer-setup.php') === trim(file_get_contents('signature'))) { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" \
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
&& php -r "unlink('composer-setup.php');" \
# Install WP-CLI
&& curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar \
&& chmod +x wp-cli.phar \
&& mv wp-cli.phar /usr/local/bin/wp \
# Install msmtp - To Send Mails on Production & Development
&& apk add msmtp
RUN apk add --no-cache gnupg
# modify www-data user to have id 1000
RUN apk add \
--no-cache \
--repository http://dl-3.alpinelinux.org/alpine/edge/community/ --allow-untrusted \
--virtual .shadow-deps \
shadow \
&& usermod -u 1000 www-data \
&& groupmod -g 1000 www-data \
&& apk del .shadow-deps
RUN apk add sudo bash
COPY ./crontab /etc/cron.d/crontab
RUN chmod 0644 /etc/cron.d/crontab
RUN /usr/bin/crontab /etc/cron.d/crontab
RUN touch /var/log/cron.log
CMD bash -c "crond -f -d 8 & php-fpm"

View File

@@ -0,0 +1,3 @@
; configuration for php mysql module
; priority=10
extension=mysqlnd.so

View File

@@ -0,0 +1,4 @@
; configuration for php opcache module
; priority=10
zend_extension=opcache.so
opcache.jit=off

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=10
extension=pdo.so

View File

@@ -0,0 +1,3 @@
; configuration for php xml module
; priority=15
extension=xml.so

View File

@@ -0,0 +1 @@
extension=apcu.so

View File

@@ -0,0 +1,3 @@
; configuration for php bcmath module
; priority=20
extension=bcmath.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=calendar.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=ctype.so

View File

@@ -0,0 +1,3 @@
; configuration for php curl module
; priority=20
extension=curl.so

View File

@@ -0,0 +1,3 @@
; configuration for php xml module
; priority=20
extension=dom.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=exif.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=ffi.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=fileinfo.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=ftp.so

View File

@@ -0,0 +1,3 @@
; configuration for php gd module
; priority=20
extension=gd.so

View File

@@ -0,0 +1,3 @@
; configuration for php common module
; priority=20
extension=gettext.so

Some files were not shown because too many files have changed in this diff Show More