diff --git a/cmd/certs.go b/cmd/certs.go
index d93fe13..dbcb40b 100644
--- a/cmd/certs.go
+++ b/cmd/certs.go
@@ -24,11 +24,20 @@ var Certs = &cli.Command{
 			Action: removeCert,
 		},
 	},
+	Flags: []cli.Flag{
+		// Cert Storage
+		// TODO: remove in next version
+		&cli.StringFlag{
+			// DEPRICATED
+			Name:    "db-pogreb",
+			Value:   "key-database.pogreb",
+			EnvVars: []string{"DB_POGREB"},
+		},
+	},
 }
 
 func listCerts(ctx *cli.Context) error {
-	// TODO: make "key-database.pogreb" set via flag
-	keyDatabase, err := database.New("key-database.pogreb")
+	keyDatabase, err := database.NewPogreb(ctx.String("db-pogreb"))
 	if err != nil {
 		return fmt.Errorf("could not create database: %v", err)
 	}
@@ -53,8 +62,7 @@ func removeCert(ctx *cli.Context) error {
 
 	domains := ctx.Args().Slice()
 
-	// TODO: make "key-database.pogreb" set via flag
-	keyDatabase, err := database.New("key-database.pogreb")
+	keyDatabase, err := database.NewPogreb(ctx.String("db-pogreb"))
 	if err != nil {
 		return fmt.Errorf("could not create database: %v", err)
 	}
diff --git a/cmd/flags.go b/cmd/flags.go
index 8ac09ec..5d0279d 100644
--- a/cmd/flags.go
+++ b/cmd/flags.go
@@ -120,4 +120,13 @@ var ServeFlags = []cli.Flag{
 		// TODO: Usage
 		EnvVars: []string{"DNS_PROVIDER"},
 	},
+
+	// Cert Storage
+	// TODO: remove in next version
+	&cli.StringFlag{
+		// DEPRICATED
+		Name:    "db-pogreb",
+		Value:   "key-database.pogreb",
+		EnvVars: []string{"DB_POGREB"},
+	},
 }
diff --git a/cmd/main.go b/cmd/main.go
index b72013a..fc7afd4 100644
--- a/cmd/main.go
+++ b/cmd/main.go
@@ -74,6 +74,14 @@ func Serve(ctx *cli.Context) error {
 		mainDomainSuffix = "." + mainDomainSuffix
 	}
 
+	// Init ssl cert database
+	dbPogrebDB := ctx.String("db-pogreb")
+	certDB, err := database.NewPogreb(dbPogrebDB)
+	if err != nil {
+		return fmt.Errorf("could not create database: %v", err)
+	}
+	defer certDB.Close() //nolint:errcheck    // database has no close ... sync behave like it
+
 	keyCache := cache.NewKeyValueCache()
 	challengeCache := cache.NewKeyValueCache()
 	// canonicalDomainCache stores canonical domains
@@ -104,13 +112,6 @@ func Serve(ctx *cli.Context) error {
 		return fmt.Errorf("couldn't create listener: %v", err)
 	}
 
-	// TODO: make "key-database.pogreb" set via flag
-	certDB, err := database.New("key-database.pogreb")
-	if err != nil {
-		return fmt.Errorf("could not create database: %v", err)
-	}
-	defer certDB.Close() //nolint:errcheck    // database has no close ... sync behave like it
-
 	listener = tls.NewListener(listener, certificates.TLSConfig(mainDomainSuffix,
 		giteaClient,
 		dnsProvider,
diff --git a/server/database/setup.go b/server/database/pogreb.go
similarity index 97%
rename from server/database/setup.go
rename to server/database/pogreb.go
index 097c63e..eeea9cc 100644
--- a/server/database/setup.go
+++ b/server/database/pogreb.go
@@ -82,7 +82,7 @@ func (p aDB) sync() {
 	}
 }
 
-func New(path string) (CertDB, error) {
+func NewPogreb(path string) (CertDB, error) {
 	if path == "" {
 		return nil, fmt.Errorf("path not set")
 	}