Update Dockerfile
Browse files- Dockerfile +14 -14
Dockerfile
CHANGED
|
@@ -17,10 +17,10 @@ RUN pip install --no-cache-dir --upgrade -r requirements.txt
|
|
| 17 |
COPY --chown=user . /app
|
| 18 |
|
| 19 |
# Initialize the database
|
| 20 |
-
RUN python -
|
| 21 |
-
import sqlite3
|
| 22 |
-
conn = sqlite3.connect('/app/database.db')
|
| 23 |
-
cursor = conn.cursor()
|
| 24 |
cursor.execute('''
|
| 25 |
CREATE TABLE IF NOT EXISTS sessions (
|
| 26 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -33,7 +33,7 @@ cursor.execute('''
|
|
| 33 |
session_type TEXT,
|
| 34 |
duration INTEGER
|
| 35 |
)
|
| 36 |
-
''')
|
| 37 |
cursor.execute('''
|
| 38 |
CREATE TABLE IF NOT EXISTS users (
|
| 39 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -41,7 +41,7 @@ cursor.execute('''
|
|
| 41 |
password TEXT,
|
| 42 |
is_admin INTEGER DEFAULT 0
|
| 43 |
)
|
| 44 |
-
''')
|
| 45 |
cursor.execute('''
|
| 46 |
CREATE TABLE IF NOT EXISTS tasks (
|
| 47 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -49,7 +49,7 @@ cursor.execute('''
|
|
| 49 |
description TEXT,
|
| 50 |
completed INTEGER DEFAULT 0
|
| 51 |
)
|
| 52 |
-
''')
|
| 53 |
cursor.execute('''
|
| 54 |
CREATE TABLE IF NOT EXISTS settings (
|
| 55 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
@@ -58,24 +58,24 @@ cursor.execute('''
|
|
| 58 |
setting_value TEXT,
|
| 59 |
UNIQUE(user_id, setting_name)
|
| 60 |
)
|
| 61 |
-
''')
|
| 62 |
cursor.execute('''
|
| 63 |
CREATE TABLE IF NOT EXISTS admin_settings (
|
| 64 |
setting_name TEXT PRIMARY KEY,
|
| 65 |
setting_value INTEGER
|
| 66 |
)
|
| 67 |
-
''')
|
| 68 |
default_settings = [
|
| 69 |
('sound_enabled', 1),
|
| 70 |
('notifications_enabled', 1),
|
| 71 |
('dark_mode_enabled', 1),
|
| 72 |
('task_manager_enabled', 1),
|
| 73 |
('statistics_enabled', 1)
|
| 74 |
-
]
|
| 75 |
-
cursor.executemany('INSERT OR IGNORE INTO admin_settings (setting_name, setting_value) VALUES (?, ?)', default_settings)
|
| 76 |
-
conn.commit()
|
| 77 |
-
conn.close()
|
| 78 |
-
|
| 79 |
|
| 80 |
# Make port 7860 available to the world outside this container
|
| 81 |
EXPOSE 7860
|
|
|
|
| 17 |
COPY --chown=user . /app
|
| 18 |
|
| 19 |
# Initialize the database
|
| 20 |
+
RUN python - <<EOF
|
| 21 |
+
import sqlite3
|
| 22 |
+
conn = sqlite3.connect('/app/database.db')
|
| 23 |
+
cursor = conn.cursor()
|
| 24 |
cursor.execute('''
|
| 25 |
CREATE TABLE IF NOT EXISTS sessions (
|
| 26 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
| 33 |
session_type TEXT,
|
| 34 |
duration INTEGER
|
| 35 |
)
|
| 36 |
+
''')
|
| 37 |
cursor.execute('''
|
| 38 |
CREATE TABLE IF NOT EXISTS users (
|
| 39 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
| 41 |
password TEXT,
|
| 42 |
is_admin INTEGER DEFAULT 0
|
| 43 |
)
|
| 44 |
+
''')
|
| 45 |
cursor.execute('''
|
| 46 |
CREATE TABLE IF NOT EXISTS tasks (
|
| 47 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
| 49 |
description TEXT,
|
| 50 |
completed INTEGER DEFAULT 0
|
| 51 |
)
|
| 52 |
+
''')
|
| 53 |
cursor.execute('''
|
| 54 |
CREATE TABLE IF NOT EXISTS settings (
|
| 55 |
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
| 58 |
setting_value TEXT,
|
| 59 |
UNIQUE(user_id, setting_name)
|
| 60 |
)
|
| 61 |
+
''')
|
| 62 |
cursor.execute('''
|
| 63 |
CREATE TABLE IF NOT EXISTS admin_settings (
|
| 64 |
setting_name TEXT PRIMARY KEY,
|
| 65 |
setting_value INTEGER
|
| 66 |
)
|
| 67 |
+
''')
|
| 68 |
default_settings = [
|
| 69 |
('sound_enabled', 1),
|
| 70 |
('notifications_enabled', 1),
|
| 71 |
('dark_mode_enabled', 1),
|
| 72 |
('task_manager_enabled', 1),
|
| 73 |
('statistics_enabled', 1)
|
| 74 |
+
]
|
| 75 |
+
cursor.executemany('INSERT OR IGNORE INTO admin_settings (setting_name, setting_value) VALUES (?, ?)', default_settings)
|
| 76 |
+
conn.commit()
|
| 77 |
+
conn.close()
|
| 78 |
+
EOF
|
| 79 |
|
| 80 |
# Make port 7860 available to the world outside this container
|
| 81 |
EXPOSE 7860
|