feat: PostgreSQL 支持同时安装多个版本

This commit is contained in:
wanghe-fit2cloud 2024-08-22 11:59:52 +08:00
parent cc687f8995
commit 38eb6c39b7
10 changed files with 244 additions and 24 deletions

View File

@ -0,0 +1,25 @@
additionalProperties:
formFields:
- default: user
envKey: PANEL_DB_ROOT_USER
labelEn: Username
labelZh: 用户名
random: true
required: true
rule: paramCommon
type: text
- default: password
envKey: PANEL_DB_ROOT_PASSWORD
labelEn: Password
labelZh: 用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 5432
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,25 @@
services:
postgres:
container_name: ${CONTAINER_NAME}
image: postgres:12.20-alpine
restart: always
environment:
- POSTGRES_USER=${PANEL_DB_ROOT_USER}
- POSTGRES_PASSWORD=${PANEL_DB_ROOT_PASSWORD}
ports:
- ${PANEL_APP_PORT_HTTP}:5432
volumes:
- ./data:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-h", "127.0.0.1", "-p", "5432", "-q", "-U", "${PANEL_DB_ROOT_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
networks:
- 1panel-network
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -0,0 +1,25 @@
additionalProperties:
formFields:
- default: user
envKey: PANEL_DB_ROOT_USER
labelEn: Username
labelZh: 用户名
random: true
required: true
rule: paramCommon
type: text
- default: password
envKey: PANEL_DB_ROOT_PASSWORD
labelEn: Password
labelZh: 用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 5432
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,25 @@
services:
postgres:
container_name: ${CONTAINER_NAME}
image: postgres:13.16-alpine
restart: always
environment:
- POSTGRES_USER=${PANEL_DB_ROOT_USER}
- POSTGRES_PASSWORD=${PANEL_DB_ROOT_PASSWORD}
ports:
- ${PANEL_APP_PORT_HTTP}:5432
volumes:
- ./data:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-h", "127.0.0.1", "-p", "5432", "-q", "-U", "${PANEL_DB_ROOT_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
networks:
- 1panel-network
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -0,0 +1,25 @@
additionalProperties:
formFields:
- default: user
envKey: PANEL_DB_ROOT_USER
labelEn: Username
labelZh: 用户名
random: true
required: true
rule: paramCommon
type: text
- default: password
envKey: PANEL_DB_ROOT_PASSWORD
labelEn: Password
labelZh: 用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 5432
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,25 @@
services:
postgres:
container_name: ${CONTAINER_NAME}
image: postgres:14.13-alpine
restart: always
environment:
- POSTGRES_USER=${PANEL_DB_ROOT_USER}
- POSTGRES_PASSWORD=${PANEL_DB_ROOT_PASSWORD}
ports:
- ${PANEL_APP_PORT_HTTP}:5432
volumes:
- ./data:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-h", "127.0.0.1", "-p", "5432", "-q", "-U", "${PANEL_DB_ROOT_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
networks:
- 1panel-network
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -0,0 +1,25 @@
additionalProperties:
formFields:
- default: user
envKey: PANEL_DB_ROOT_USER
labelEn: Username
labelZh: 用户名
random: true
required: true
rule: paramCommon
type: text
- default: password
envKey: PANEL_DB_ROOT_PASSWORD
labelEn: Password
labelZh: 用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 5432
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,25 @@
services:
postgres:
container_name: ${CONTAINER_NAME}
image: postgres:15.8-alpine
restart: always
environment:
- POSTGRES_USER=${PANEL_DB_ROOT_USER}
- POSTGRES_PASSWORD=${PANEL_DB_ROOT_PASSWORD}
ports:
- ${PANEL_APP_PORT_HTTP}:5432
volumes:
- ./data:/var/lib/postgresql/data
healthcheck:
test: ["CMD", "pg_isready", "-h", "127.0.0.1", "-p", "5432", "-q", "-U", "${PANEL_DB_ROOT_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
networks:
- 1panel-network
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -98,6 +98,26 @@
"matchFileNames": ["apps/mssql/2022-*/*.yml"], "matchFileNames": ["apps/mssql/2022-*/*.yml"],
"allowedVersions": "/^2022-*/" "allowedVersions": "/^2022-*/"
}, },
{
"matchFileNames": ["apps/postgresql/12.*/*.yml"],
"allowedVersions": "/^12.*/"
},
{
"matchFileNames": ["apps/postgresql/13.*/*.yml"],
"allowedVersions": "/^13.*/"
},
{
"matchFileNames": ["apps/postgresql/14.*/*.yml"],
"allowedVersions": "/^14.*/"
},
{
"matchFileNames": ["apps/postgresql/15.*/*.yml"],
"allowedVersions": "/^15.*/"
},
{
"matchFileNames": ["apps/postgresql/16.*/*.yml"],
"allowedVersions": "/^16.*/"
},
{ {
"matchDatasources": ["docker"], "matchDatasources": ["docker"],
"matchPackageNames": ["ghcr.io/umami-software/umami"], "matchPackageNames": ["ghcr.io/umami-software/umami"],