From 44f2310af1a1aa5ce070cf074da4aa1fe560cf25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=AE=8F=E5=BB=BA?= Date: Sun, 19 Apr 2026 00:30:24 +0800 Subject: [PATCH] =?UTF-8?q?feat(docker):=20=E6=B7=BB=E5=8A=A0=20Docker=20?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E5=92=8C=20Git=20=E5=BF=BD?= =?UTF-8?q?=E7=95=A5=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加 .gitignore 文件以忽略 Docker 数据目录和日志文件 - 创建 MySQL Docker Compose 配置文件 - 创建 Nginx Docker Compose 配置文件 - 创建 Redis Docker Compose 配置文件 - 配置 MySQL 容器环境变量和数据卷 - 配置 Nginx 容器端口映射和配置卷 - 配置 Redis 容器持久化设置 --- .gitignore | 22 ++++++++++++++++++++++ mysql/data/.gitkeep | 1 + mysql/docker-compose.yml | 16 ++++++++++++++++ mysql/init/.gitkeep | 1 + nginx/conf.d/.gitkeep | 1 + nginx/docker-compose.yml | 13 +++++++++++++ nginx/html/.gitkeep | 1 + nginx/logs/.gitkeep | 1 + redis/data/.gitkeep | 1 + redis/docker-compose.yml | 11 +++++++++++ 10 files changed, 68 insertions(+) create mode 100644 .gitignore create mode 100644 mysql/data/.gitkeep create mode 100644 mysql/docker-compose.yml create mode 100644 mysql/init/.gitkeep create mode 100644 nginx/conf.d/.gitkeep create mode 100644 nginx/docker-compose.yml create mode 100644 nginx/html/.gitkeep create mode 100644 nginx/logs/.gitkeep create mode 100644 redis/data/.gitkeep create mode 100644 redis/docker-compose.yml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2973b16 --- /dev/null +++ b/.gitignore @@ -0,0 +1,22 @@ +# Docker 数据目录 +mysql/data/* +!mysql/data/.gitkeep +redis/data/* +!redis/data/.gitkeep + +# Nginx 相关目录 +nginx/html/* +!nginx/html/.gitkeep +nginx/conf.d/* +!nginx/conf.d/.gitkeep +nginx/logs/* +!nginx/logs/.gitkeep + +# MySQL 初始化脚本目录 +mysql/init/* +!mysql/init/.gitkeep + +# 其他可能需要忽略的文件 +*.log +.DS_Store +Thumbs.db \ No newline at end of file diff --git a/mysql/data/.gitkeep b/mysql/data/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/mysql/data/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/mysql/docker-compose.yml b/mysql/docker-compose.yml new file mode 100644 index 0000000..a3613f8 --- /dev/null +++ b/mysql/docker-compose.yml @@ -0,0 +1,16 @@ +version: '3.8' + +services: + mysql: + image: mysql:8.0 + container_name: mysql + restart: always + environment: + MYSQL_ROOT_PASSWORD: root + MYSQL_USER: docker + MYSQL_PASSWORD: docker + ports: + - "3306:3306" + volumes: + - ./data:/var/lib/mysql + - ./init:/docker-entrypoint-initdb.d diff --git a/mysql/init/.gitkeep b/mysql/init/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/mysql/init/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/nginx/conf.d/.gitkeep b/nginx/conf.d/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/nginx/conf.d/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/nginx/docker-compose.yml b/nginx/docker-compose.yml new file mode 100644 index 0000000..2adcc6d --- /dev/null +++ b/nginx/docker-compose.yml @@ -0,0 +1,13 @@ +version: '3.8' + +services: + nginx: + image: nginx:alpine + container_name: nginx + ports: + - "80:80" + - "443:443" + volumes: + - ./html:/usr/share/nginx/html + - ./conf.d:/etc/nginx/conf.d + - ./logs:/var/log/nginx diff --git a/nginx/html/.gitkeep b/nginx/html/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/nginx/html/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/nginx/logs/.gitkeep b/nginx/logs/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/nginx/logs/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/redis/data/.gitkeep b/redis/data/.gitkeep new file mode 100644 index 0000000..8e59abf --- /dev/null +++ b/redis/data/.gitkeep @@ -0,0 +1 @@ +# This file is used to keep the directory in Git even when it's empty diff --git a/redis/docker-compose.yml b/redis/docker-compose.yml new file mode 100644 index 0000000..d20bed2 --- /dev/null +++ b/redis/docker-compose.yml @@ -0,0 +1,11 @@ +version: '3.8' + +services: + redis: + image: redis:7-alpine + container_name: redis + command: redis-server --appendonly yes + ports: + - "6379:6379" + volumes: + - ./data:/data