Bez popisu

tanlie 1343f208dd config env před 3 dny
.github 1163b37a0b logger enhance před 6 dny
app 714d281ddb 生产日志配置。 před 3 dny
note 1904a24bfd 视图函数。 před 6 dny
tests 026d79c122 AI优化。 před 6 dny
.env.example 5ccceb51dc Track env example and align deployment defaults před 6 dny
.gitignore be0766cd53 删除重复内容 před 6 dny
Dockerfile f4c42211c1 docker images před 3 dny
README.md 5d0119202f 数据库连接。 před 6 dny
docker-compose.yaml 1343f208dd config env před 3 dny
ginger.py 714d281ddb 生产日志配置。 před 3 dny
requirements.txt d090e4db59 Add uwsgi Docker deployment před 6 dny
uwsgi.ini d090e4db59 Add uwsgi Docker deployment před 6 dny

README.md

ginger

Small Flask project. This README explains how to store the MySQL password securely using the OS keyring and how to verify it.

Secure DB password with keyring

This project prefers reading MYSQL_PASSWORD from environment variables. If you don't want to store the password in .env, put it into the OS keyring (recommended for development machines).

Service name used: ginger_mysql

Examples:

  • macOS / Linux (python -c):

python -c "import keyring; keyring.set_password('ginger_mysql', 'root', '@@qinys12346..')"

  • Windows PowerShell:

python -c "import keyring; keyring.set_password('ginger_mysql', 'root', '@@qinys12346..')"

To verify the stored password:

python -c "import keyring; print(keyring.get_password('ginger_mysql', 'root'))"

Alternative: environment variable

You can also set MYSQL_PASSWORD in .env (not recommended to commit .env). The repository .gitignore already ignores .env files.

Test DB connection (dev only)

Start the app and POST to /db/test (only works when DEBUG or TESTING is true) to create tables and insert a test user.

Notes

  • On CI or servers prefer a proper secret manager (Vault, AWS Secrets Manager, etc.) and inject secrets as env vars.
  • Do NOT commit real passwords to the repository.