From 0e6df50a7f226cd979fb514f59ce0e8f5ae64c0b Mon Sep 17 00:00:00 2001 From: Last2014 Date: Thu, 30 Oct 2025 00:48:54 +0900 Subject: [PATCH] First Commit --- .env.example | 10 ++++++++++ .gitignore | 2 ++ README.md | 19 +++++++++++++++++++ db/init.sql | 1 + db/my.cnf | 2 ++ docker-compose.yml | 42 ++++++++++++++++++++++++++++++++++++++++++ php/Dockerfile | 16 ++++++++++++++++ php/apache2.conf | 9 +++++++++ php/php.ini | 7 +++++++ 9 files changed, 108 insertions(+) create mode 100644 .env.example create mode 100644 .gitignore create mode 100644 README.md create mode 100644 db/init.sql create mode 100644 db/my.cnf create mode 100644 docker-compose.yml create mode 100644 php/Dockerfile create mode 100644 php/apache2.conf create mode 100644 php/php.ini diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..b081f78 --- /dev/null +++ b/.env.example @@ -0,0 +1,10 @@ +# Apache +PUBLIC_PORT=80 # 配信ポート + +# MariaDB +MARIADB_ROOT_PASSWORD=rootpass # ルートパスワード +MARIADB_DATABASE=uwuzu # データベース +MARIADB_USER=uwuzu # ユーザー名 +MARIADB_PASSWORD=password # パスワード +MARIADB_TIME_ZONE=Azia/Tokyo # タイムゾーン +PUBLIC_MARIADB_PORT=3306 # 配信ポート # 外部にMariaDBを後悔しない場合は不要 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f0043c4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.env +src/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..3419e78 --- /dev/null +++ b/README.md @@ -0,0 +1,19 @@ +# uwuzuをDocker Composeで動かすやつ +## What is this +uwuzu v1.6.5がDocker Composeで動きます。 + +## 使い方 +### .env +.env.exampleの空気を読んでください + +### srcフォルダ +srcフォルダにuwuzuのZIPを展開してください。 +v1.6.5は検証済みです。 + +### phpフォルダ・dbフォルダ +MariaDB・PHP・Apacheの設定が色々あります。 +一旦v1.6.5用の設定があります。 +これを読んでいる以上技術者ではあるはずなのでv1.6.5以上でこのリポジトリが更新されていないのに構造に破壊的変更があったら空気を読んでいじってください。 + +# 結論 +空気読めば動く diff --git a/db/init.sql b/db/init.sql new file mode 100644 index 0000000..2dbecf8 --- /dev/null +++ b/db/init.sql @@ -0,0 +1 @@ +CREATE DATABASE uwuzu; diff --git a/db/my.cnf b/db/my.cnf new file mode 100644 index 0000000..2f81d61 --- /dev/null +++ b/db/my.cnf @@ -0,0 +1,2 @@ +[mysqld] +sql_mode = NO_ENGINE_SUBSTITUTION diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..85ecf89 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,42 @@ +services: + web: + build: + context: ./php + container_name: php-apache-dev + ports: + - "${PUBLIC_PORT}:80" + volumes: + - ./src:/var/www/html + - ./php/php.ini:/usr/local/etc/php/conf.d/99-custom.ini + environment: + - APACHE_DOCUMENT_ROOT=/var/www/html + depends_on: + - db + networks: + - devnet + + db: + image: mariadb:11.3 + container_name: mariadb-dev + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD} + MYSQL_DATABASE: ${MARIADB_DATABASE} + MYSQL_USER: ${MARIADB_USER} + MYSQL_PASSWORD: ${MARIADB_PASSWORD} + TZ: ${MARIADB_TIME_ZONE} + volumes: + - db_data:/var/lib/mysql + - ./db/init.sql:/docker-entrypoint-initdb.d/init.sql + - ./db/my.cnf:/etc/mysql/conf.d/my.cnf + ports: + - "${PUBLIC_MARIADB_PORT}:3306" + networks: + - devnet + +networks: + devnet: + driver: bridge + +volumes: + db_data: diff --git a/php/Dockerfile b/php/Dockerfile new file mode 100644 index 0000000..eaeed3e --- /dev/null +++ b/php/Dockerfile @@ -0,0 +1,16 @@ +FROM php:8.2-apache + +RUN apt-get update +RUN apt-get install -y \ + libpng-dev \ + libjpeg62-turbo-dev \ + libfreetype6-dev \ + libonig-dev \ + libzip-dev \ + zip \ + unzip +RUN docker-php-ext-configure gd --with-freetype --with-jpeg +RUN docker-php-ext-install gd pdo_mysql mysqli mbstring zip fileinfo + +RUN a2enmod rewrite headers +COPY apache2.conf /etc/apache2/conf-enabled/99-custom.conf diff --git a/php/apache2.conf b/php/apache2.conf new file mode 100644 index 0000000..3eba03f --- /dev/null +++ b/php/apache2.conf @@ -0,0 +1,9 @@ + + Options Indexes FollowSymLinks + AllowOverride All + Require all granted + + +ServerName localhost +ServerAdmin webmaster@localhost +DocumentRoot /var/www/html diff --git a/php/php.ini b/php/php.ini new file mode 100644 index 0000000..c82f2fe --- /dev/null +++ b/php/php.ini @@ -0,0 +1,7 @@ +display_errors = Off +extension=fileinfo +extension=gd +extension=pdo_mysql +extension=mysqli +extension=mbstring +extension=zip