From 15720c6a62af6b834c0392e9a4e410a071b2eeaf Mon Sep 17 00:00:00 2001 From: ZF sun <34314687@qq.com> Date: Wed, 24 Dec 2025 10:47:21 +0800 Subject: [PATCH] =?UTF-8?q?chore(env):=20=E5=A2=9E=E5=8A=A0test=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=E5=8F=98=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.test | 25 +++++++++ docker-compose.local.yml | 118 --------------------------------------- src/.env.test | 24 ++++++++ 3 files changed, 49 insertions(+), 118 deletions(-) create mode 100644 .env.test delete mode 100644 docker-compose.local.yml create mode 100644 src/.env.test diff --git a/.env.test b/.env.test new file mode 100644 index 000000000..2be4c5f1f --- /dev/null +++ b/.env.test @@ -0,0 +1,25 @@ +# 项目配置, 请根据实际情况修改 +PROJECT_NAME=newshop + +# ThinkPHP 6.x 配置, 请根据实际情况修改 +APP_ENV=development + +# PHP/PHP-FPM 配置 +PHP_VERSION=7.4 +PHP_FPM_VERSION=7.4-fpm + +# 数据库配置 +MYSQL_ROOT_HOST=% +MYSQL_DATABASE=shop_mallnew +MYSQL_USER=shop_mallnew +MYSQL_PASSWORD=shop_mallnew +MYSQL_PORT=3326 + +# Redis 绑定端口及密码 +REDIS_PASSWORD=luckyshop123!@# +REDIS_PORT=6499 + +# Nginx 暴漏端口 +NGINX_PORT=8050 +NGINX_SSL_PORT=8052 + diff --git a/docker-compose.local.yml b/docker-compose.local.yml deleted file mode 100644 index 8401e4e0a..000000000 --- a/docker-compose.local.yml +++ /dev/null @@ -1,118 +0,0 @@ -# 特别说明,本地local环境,方便操作,所以未使用的统一的docker-compose.yml文件,只保留了local环境的配置 - -x-shared-env: &shared-api-env - MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-rootpassword} - MYSQL_ROOT_HOST: ${MYSQL_ROOT_HOST:-'%'} # 允许root从任何主机连接 - MYSQL_DATABASE: ${MYSQL_DATABASE:-shop_mallnew} - MYSQL_USER: ${MYSQL_USER:-shop_mallnew} - MYSQL_PASSWORD: ${MYSQL_PASSWORD:-shop_mallnew} - - REDIS_PASSWORD: ${REDIS_PASSWORD:-luckyshop123!@#} - REDIS_PORT: ${REDIS_PORT:-6379} - -# 将服务归类到目录 A 中 -services: - php-fpm: - build: - context: ./docker/php - dockerfile: Dockerfile - container_name: ${PROJECT_NAME}_php - restart: always - extra_hosts: - - "host.docker.internal:host-gateway" # 支持主机名解析 - environment: - PHP_ENV: ${PHP_ENV:-development} - # 环境变量, APP_ENV 应用于 ThinkPHP 6.x 框架, .env.local 要想启用,需要在项目根目录下创建 .env.local 文件,并将 APP_ENV 设置为 local - # 同理,如果要启用开发环境,则将 APP_ENV 设置为 development,如果要启用生产环境,则将 APP_ENV 设置为 production - # 不然,ThinkPHP 6.x 系列,会只加载 .env 文件,而不会加载 .env.local 文件,导致 .env.local 文件中的配置不会生效 - APP_ENV: ${APP_ENV:-local} - APP_DEBUG: ${APP_DEBUG:-true} - volumes: - - ./:/var/www/all_source - - ./src:/var/www/html - # 更新下载源列表以加速apt-get - - ./docker/debian/sources.list:/etc/apt/sources.list:ro - - ./docker/php/php.ini:/usr/local/etc/php/php.ini:ro - depends_on: - - db - healthcheck: - test: ["CMD", "bash", "-c", "curl -f http://localhost:9000/status"] - interval: 30s - timeout: 10s - retries: 3 - start_period: 60s - networks: - - sass-platform-net - labels: - - "com.docker.compose.project.working_dir=${PROJECT_NAME}" - - nginx: - build: - context: ./docker/nginx - dockerfile: Dockerfile - container_name: ${PROJECT_NAME}_nginx - restart: always - ports: - - "${NGINX_PORT:-80}:80" - - "${NGINX_SSL_PORT:-443}:443" - volumes: - # 挂载项目代码到 Nginx 容器中 - - ./src:/var/www/html:rw - # 更新下载源列表以加速apt-get - - ./docker/debian/sources.list:/etc/apt/sources.list:ro - # 创建临时目录 - - /var/www/server/nginx/proxy_temp_dir - - /var/www/server/nginx/proxy_cache_dir - depends_on: - - php-fpm - networks: - - sass-platform-net - labels: - - "com.docker.compose.project.working_dir=${PROJECT_NAME}" - - db: - image: mysql:5.7.44 - container_name: ${PROJECT_NAME}_mysql - environment: - <<: *shared-api-env - volumes: - - mysql_db_data:/var/lib/mysql - - ./docker/mysql/init:/docker-entrypoint-initdb.d - - ./docker/mysql/my.cnf:/etc/mysql/conf.d/custom.cnf - ports: - - ${MYSQL_PORT:-3306}:3306 - networks: - - sass-platform-net - restart: unless-stopped - command: - - --character-set-server=utf8mb4 - - --collation-server=utf8mb4_unicode_ci - - --innodb_buffer_pool_size=256M - labels: - - "com.docker.compose.project.working_dir=${PROJECT_NAME}" - - # Redis 服务(可选) - redis: - image: redis:8.2 - container_name: ${PROJECT_NAME}_redis - environment: - REDIS_PASSWORD: ${REDIS_PASSWORD:-luckyshop123!@#} - REDISCLI_AUTH: ${REDIS_PASSWORD:-luckyshop123!@#} - ports: - - "${REDIS_PORT:-6379}:6379" - volumes: - - redis_data:/data - - ./docker/redis/redis.conf:/etc/redis/redis.conf - networks: - - sass-platform-net - restart: unless-stopped - labels: - - "com.docker.compose.project.working_dir=${PROJECT_NAME}" - -volumes: - mysql_db_data: - redis_data: - -networks: - sass-platform-net: - driver: bridge \ No newline at end of file diff --git a/src/.env.test b/src/.env.test new file mode 100644 index 000000000..316e15642 --- /dev/null +++ b/src/.env.test @@ -0,0 +1,24 @@ +APP_DEBUG = true +APP_TRACE = true + +[APP] +DEFAULT_TIMEZONE = Asia/Shanghai + +[LANG] +default_lang = zh-cn + +[DATABASE] +TYPE = mysql +HOSTNAME = db +DATABASE = shop_mallnew +USERNAME = shop_mallnew +PASSWORD = shop_mallnew +HOSTPORT = 3306 +CHARSET = utf8mb4 +DEBUG = true + +[REDIS] +HOST = redis +PORT = 6379 +PASSWORD = 'luckyshop123!@#' +EXPIRY = 604800 \ No newline at end of file