Загрузка данных
import time
from base import SessionLocal, User
def init_test():
db = SessionLocal()
if db.query(User).count() == 0:
users = [
User(login='pavel', email='a@gmail.com'),
User(login='yura', email='b@gmail.com')
]
db.add_all(users)
db.commit()
print('Al users are added')
else:
print('DB already contains users')
db.close()
if __name__ == '__main__':
time.sleep(3)
init_test()
[+] up 8/8
✔ Image docker-compose-advanced-template-db-init Built 2.3s
✔ Image docker-compose-advanced-template-backend Built 2.3s
✔ Network docker-compose-advanced-template_default Created 0.0s
✔ Volume docker-compose-advanced-template_pg_data Created 0.0s
✔ Container docker-compose-advanced-template-db-1 Created 0.1s
✔ Container docker-compose-advanced-template-db-init-1 Created 0.1s
✔ Container docker-compose-advanced-template-backend-1 Created 0.1s
✔ Container docker-compose-advanced-template-frontend-1 Created 0.2s
Attaching to backend-1, db-1, db-init-1, frontend-1
Container docker-compose-advanced-template-db-1 Waiting
db-1 | The files belonging to this database system will be owned by user "postgres".
db-1 | This user must also own the server process.
db-1 |
db-1 | The database cluster will be initialized with locale "en_US.utf8".
db-1 | The default database encoding has accordingly been set to "UTF8".
db-1 | The default text search configuration will be set to "english".
db-1 |
db-1 | Data page checksums are disabled.
db-1 |
db-1 | fixing permissions on existing directory /var/lib/postgresql/data ... ok
db-1 | creating subdirectories ... ok
db-1 | selecting dynamic shared memory implementation ... posix
db-1 | selecting default max_connections ... 100
db-1 | selecting default shared_buffers ... 128MB
db-1 | selecting default time zone ... UTC
db-1 | creating configuration files ... ok
db-1 | running bootstrap script ... ok
db-1 | sh: locale: not found
db-1 | 2026-05-24 13:32:47.926 UTC [35] WARNING: no usable system locales were found
db-1 | performing post-bootstrap initialization ... ok
db-1 | initdb: warning: enabling "trust" authentication for local connections
db-1 | initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.
db-1 | syncing data to disk ... ok
db-1 |
db-1 |
db-1 | Success. You can now start the database server using:
db-1 |
db-1 | pg_ctl -D /var/lib/postgresql/data -l logfile start
db-1 |
db-1 | waiting for server to start....2026-05-24 13:32:49.094 UTC [41] LOG: starting PostgreSQL 15.18 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
db-1 | 2026-05-24 13:32:49.099 UTC [41] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
db-1 | 2026-05-24 13:32:49.108 UTC [44] LOG: database system was shut down at 2026-05-24 13:32:48 UTC
db-1 | 2026-05-24 13:32:49.114 UTC [41] LOG: database system is ready to accept connections
db-1 | done
db-1 | server started
db-1 |
db-1 | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*
db-1 |
db-1 | waiting for server to shut down....2026-05-24 13:32:49.202 UTC [41] LOG: received fast shutdown request
db-1 | 2026-05-24 13:32:49.206 UTC [41] LOG: aborting any active transactions
db-1 | 2026-05-24 13:32:49.209 UTC [41] LOG: background worker "logical replication launcher" (PID 47) exited with exit code 1
db-1 | 2026-05-24 13:32:49.209 UTC [42] LOG: shutting down
db-1 | 2026-05-24 13:32:49.212 UTC [42] LOG: checkpoint starting: shutdown immediate
db-1 | 2026-05-24 13:32:49.228 UTC [42] LOG: checkpoint complete: wrote 3 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.005 s, sync=0.003 s, total=0.019 s; sync files=2, longest=0.002 s, average=0.002 s; distance=0 kB, estimate=0 kB
db-1 | 2026-05-24 13:32:49.233 UTC [41] LOG: database system is shut down
db-1 | done
db-1 | server stopped
db-1 |
db-1 | PostgreSQL init process complete; ready for start up.
db-1 |
db-1 | 2026-05-24 13:32:49.343 UTC [1] LOG: starting PostgreSQL 15.18 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
db-1 | 2026-05-24 13:32:49.343 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
db-1 | 2026-05-24 13:32:49.343 UTC [1] LOG: listening on IPv6 address "::", port 5432
db-1 | 2026-05-24 13:32:49.348 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
db-1 | 2026-05-24 13:32:49.355 UTC [55] LOG: database system was shut down at 2026-05-24 13:32:49 UTC
db-1 | 2026-05-24 13:32:49.361 UTC [1] LOG: database system is ready to accept connections
Container docker-compose-advanced-template-db-1 Healthy
Container docker-compose-advanced-template-db-init-1 Waiting
db-init-1 | Traceback (most recent call last):
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 143, in __init__
db-init-1 | self._dbapi_connection = engine.raw_connection()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3317, in raw_connection
db-init-1 | return self.pool.connect()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 448, in connect
db-init-1 | return _ConnectionFairy._checkout(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 1272, in _checkout
db-init-1 | fairy = _ConnectionRecord.checkout(pool)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 712, in checkout
db-init-1 | rec = pool._do_get()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/impl.py", line 177, in _do_get
db-init-1 | with util.safe_reraise():
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 121, in __exit__
db-init-1 | raise exc_value.with_traceback(exc_tb)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/impl.py", line 175, in _do_get
db-init-1 | return self._create_connection()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 389, in _create_connection
db-init-1 | return _ConnectionRecord(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 674, in __init__
db-init-1 | self.__connect()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 900, in __connect
db-init-1 | with util.safe_reraise():
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 121, in __exit__
db-init-1 | raise exc_value.with_traceback(exc_tb)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 896, in __connect
db-init-1 | self.dbapi_connection = connection = pool._invoke_creator(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/create.py", line 667, in connect
db-init-1 | return dialect.connect(*cargs_tup, **cparams)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 630, in connect
db-init-1 | return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
db-init-1 | File "/usr/local/lib/python3.10/site-packages/psycopg2/__init__.py", line 122, in connect
db-init-1 | conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
db-init-1 | psycopg2.OperationalError: connection to server at "localhost" (::1), port 5432 failed: Connection refused
db-init-1 | Is the server running on that host and accepting TCP/IP connections?
db-init-1 | connection to server at "localhost" (127.0.0.1), port 5432 failed: Connection refused
db-init-1 | Is the server running on that host and accepting TCP/IP connections?
db-init-1 |
db-init-1 |
db-init-1 | The above exception was the direct cause of the following exception:
db-init-1 |
db-init-1 | Traceback (most recent call last):
db-init-1 | File "/app/init_db.py", line 3, in <module>
db-init-1 | Base.metadata.create_all(bind=engine)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/sql/schema.py", line 5931, in create_all
db-init-1 | bind._run_ddl_visitor(
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3267, in _run_ddl_visitor
db-init-1 | with self.begin() as conn:
db-init-1 | File "/usr/local/lib/python3.10/contextlib.py", line 135, in __enter__
db-init-1 | return next(self.gen)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3257, in begin
db-init-1 | with self.connect() as conn:
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3293, in connect
db-init-1 | return self._connection_cls(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 145, in __init__
db-init-1 | Connection._handle_dbapi_exception_noconnection(
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 2448, in _handle_dbapi_exception_noconnection
db-init-1 | raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 143, in __init__
db-init-1 | self._dbapi_connection = engine.raw_connection()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/base.py", line 3317, in raw_connection
db-init-1 | return self.pool.connect()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 448, in connect
db-init-1 | return _ConnectionFairy._checkout(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 1272, in _checkout
db-init-1 | fairy = _ConnectionRecord.checkout(pool)
db-init-1 exited with code 1
db-init-1 | rec = pool._do_get()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/impl.py", line 177, in _do_get
db-init-1 | with util.safe_reraise():
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 121, in __exit__
db-init-1 | raise exc_value.with_traceback(exc_tb)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/impl.py", line 175, in _do_get
db-init-1 | return self._create_connection()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 389, in _create_connection
db-init-1 | return _ConnectionRecord(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 674, in __init__
db-init-1 | self.__connect()
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 900, in __connect
db-init-1 | with util.safe_reraise():
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/util/langhelpers.py", line 121, in __exit__
db-init-1 | raise exc_value.with_traceback(exc_tb)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/pool/base.py", line 896, in __connect
db-init-1 | self.dbapi_connection = connection = pool._invoke_creator(self)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/create.py", line 667, in connect
db-init-1 | return dialect.connect(*cargs_tup, **cparams)
db-init-1 | File "/usr/local/lib/python3.10/site-packages/sqlalchemy/engine/default.py", line 630, in connect
db-init-1 | return self.loaded_dbapi.connect(*cargs, **cparams) # type: ignore[no-any-return] # NOQA: E501
db-init-1 | File "/usr/local/lib/python3.10/site-packages/psycopg2/__init__.py", line 122, in connect
db-init-1 | conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
db-init-1 | sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) connection to server at "localhost" (::1), port 5432 failed: Connection refused
db-init-1 | Is the server running on that host and accepting TCP/IP connections?
db-init-1 | connection to server at "localhost" (127.0.0.1), port 5432 failed: Connection refused
db-init-1 | Is the server running on that host and accepting TCP/IP connections?
db-init-1 |
db-init-1 | (Background on this error at: https://sqlalche.me/e/20/e3q8)
Container docker-compose-advanced-template-db-init-1 Error service "db-init" didn't complete successfully: exit 1
service "db-init" didn't complete successfully: exit 1
v View in Docker Desktop o View Config w Enable Watch d Detach