feat: put the mysql password in .env

This commit is contained in:
pycook 2024-05-30 13:08:18 +08:00
parent 8875e75883
commit 0a2e7aa99f
3 changed files with 25 additions and 15 deletions

6
.env Normal file
View File

@ -0,0 +1,6 @@
MYSQL_ROOT_PASSWORD='123456'
MYSQL_HOST='mysql'
MYSQL_PORT=3306
MYSQL_USER='cmdb'
MYSQL_DATABASE='cmdb'
MYSQL_PASSWORD='123456'

View File

@ -20,10 +20,16 @@ DEBUG_TB_INTERCEPT_REDIRECTS = False
ERROR_CODES = [400, 401, 403, 404, 405, 500, 502] ERROR_CODES = [400, 401, 403, 404, 405, 500, 502]
MYSQL_USER = env.str('MYSQL_USER', default='cmdb')
MYSQL_PASSWORD = env.str('MYSQL_PASSWORD', default='123456')
MYSQL_HOST = env.str('MYSQL_HOST', default='127.0.0.1')
MYSQL_PORT = env.int('MYSQL_PORT', default=3306)
MYSQL_DATABASE = env.str('MYSQL_DATABASE', default='cmdb')
# # database # # database
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://{user}:{password}@127.0.0.1:3306/{db}?charset=utf8' SQLALCHEMY_DATABASE_URI = f'mysql+pymysql://{MYSQL_USER}:{MYSQL_PASSWORD}@' \
f'{MYSQL_HOST}:{MYSQL_PORT}/{MYSQL_DATABASE}?charset=utf8'
SQLALCHEMY_BINDS = { SQLALCHEMY_BINDS = {
'user': 'mysql+pymysql://{user}:{password}@127.0.0.1:3306/{db}?charset=utf8' 'user': SQLALCHEMY_DATABASE_URI
} }
SQLALCHEMY_ECHO = False SQLALCHEMY_ECHO = False
SQLALCHEMY_TRACK_MODIFICATIONS = False SQLALCHEMY_TRACK_MODIFICATIONS = False

View File

@ -1,4 +1,4 @@
version: '3.5' version: '2.19'
services: services:
cmdb-db: cmdb-db:
@ -6,16 +6,16 @@ services:
container_name: cmdb-db container_name: cmdb-db
environment: environment:
TZ: Asia/Shanghai TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: '123456' MYSQL_ROOT_PASSWORD: "$MYSQL_ROOT_PASSWORD"
MYSQL_DATABASE: 'cmdb' MYSQL_DATABASE: '$MYSQL_DATABASE'
MYSQL_USER: 'cmdb' MYSQL_USER: '$MYSQL_USER'
MYSQL_PASSWORD: '123456' MYSQL_PASSWORD: '$MYSQL_PASSWORD'
volumes: volumes:
- db-data:/var/lib/mysql - db-data:/var/lib/mysql
- ./docs/mysqld.cnf:/etc/mysql/conf.d/mysqld.cnf - ./docs/mysqld.cnf:/etc/mysql/conf.d/mysqld.cnf
- ./docs/cmdb.sql:/docker-entrypoint-initdb.d/cmdb.sql - ./docs/cmdb.sql:/docker-entrypoint-initdb.d/cmdb.sql
healthcheck: healthcheck:
test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost", "-p$MYSQL_ROOT_PASSWORD"]
interval: 10s interval: 10s
timeout: 5s timeout: 5s
retries: 5 retries: 5
@ -46,12 +46,14 @@ services:
cmdb-api: cmdb-api:
image: registry.cn-hangzhou.aliyuncs.com/veops/cmdb-api:2.4.5 image: registry.cn-hangzhou.aliyuncs.com/veops/cmdb-api:2.4.5
# build:
# context: .
# target: cmdb-api
container_name: cmdb-api container_name: cmdb-api
environment: environment:
TZ: Asia/Shanghai TZ: Asia/Shanghai
MYSQL_HOST: '$MYSQL_HOST'
MYSQL_PORT: $MYSQL_PORT
MYSQL_USER: '$MYSQL_USER'
MYSQL_DATABASE: '$MYSQL_DATABASE'
MYSQL_PASSWORD: '$MYSQL_PASSWORD'
WAIT_HOSTS: cmdb-db:3306, cmdb-cache:6379 WAIT_HOSTS: cmdb-db:3306, cmdb-cache:6379
depends_on: depends_on:
cmdb-db: cmdb-db:
@ -77,7 +79,6 @@ services:
flask init-import-user-from-acl flask init-import-user-from-acl
flask init-department flask init-department
flask cmdb-counter > counter.log 2>&1 flask cmdb-counter > counter.log 2>&1
networks: networks:
new: new:
aliases: aliases:
@ -85,9 +86,6 @@ services:
cmdb-ui: cmdb-ui:
image: registry.cn-hangzhou.aliyuncs.com/veops/cmdb-ui:2.4.5 image: registry.cn-hangzhou.aliyuncs.com/veops/cmdb-ui:2.4.5
# build:
# context: .
# target: cmdb-ui
container_name: cmdb-ui container_name: cmdb-ui
depends_on: depends_on:
- cmdb-api - cmdb-api