Deployment demo

An interactive overview of steps that take source code to a running container. This page is a demo only.

Deployment simulator

Simulovaný terminál:
# waiting for start...

Pipeline steps

  1. Checkout: získání zdrojového kódu z Git repozitáře
  2. Install dependencies: pip install -r requirements.txt
  3. Run tests: unit & smoke tests
  4. Build image: docker build -t devops-web:latest .
  5. Push image (opc.): docker push registry.example/your-image:tag
  6. Deploy: docker-compose up -d nebo Kubernetes manifesty / Helm
  7. Verify: health checks & smoke tests, monitoring

Poznámka: pro bezpečnost a reprodukovatelnost se v reálném provozu pipeline spouští v CI/CD systému (GitHub Actions, GitLab CI, Jenkins) a serveru se neposílají příkazy ručně.

Practical commands (example)

# Instalace závislostí
pip install -r requirements.txt

# Sestavení Docker image
docker build -t devops-web:latest .

# Spuštění lokálně pomocí docker-compose
docker-compose up --build -d

# Zobrazit běžící kontejnery
docker ps

# Prohlédnout logy (last 200 řádků)
tail -n 200 log/app.log

Recent application logs

2026-01-06 12:05:48,378 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 12:05:48,418 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 12:12:17,052 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 12:12:17,052 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 14:00:05,800 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 14:00:05,801 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 14:01:06,996 INFO app: Language selection: ip=185.217.232.181 country='CZ' lang=cs
2026-01-06 14:02:19,759 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 14:02:19,838 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 14:04:20,525 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:04:45,680 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:04:52,621 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:04:58,940 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:05:05,556 INFO app: Admin logged in from 185.217.232.181
2026-01-06 14:05:05,891 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:05:36,743 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:18:09,595 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:18:58,773 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:19:05,880 INFO app: Language selection: ip=154.28.229.193 country='' lang=en
2026-01-06 14:19:05,901 INFO app: Language selection: ip=104.252.191.214 country='' lang=en
2026-01-06 14:19:24,773 INFO app: Language selection: ip=154.28.229.193 country='' lang=en
2026-01-06 14:19:45,974 INFO app: Language selection: ip=154.28.229.193 country='' lang=en
2026-01-06 14:19:47,021 INFO app: Language selection: ip=154.28.229.193 country='' lang=en
2026-01-06 14:20:41,922 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:21:25,826 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:21:41,134 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 14:25:18,861 INFO app: Language selection: ip=128.192.12.106 country='' lang=en
2026-01-06 14:33:33,839 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:00,960 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:10,703 INFO app: Language selection: ip=104.164.126.14 country='' lang=en
2026-01-06 14:34:13,278 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:13,460 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:13,570 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:13,739 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 14:34:13,832 INFO app: Language selection: ip=104.164.173.216 country='' lang=en
2026-01-06 15:07:45,048 INFO app: Language selection: ip=74.7.227.169 country='' lang=en
2026-01-06 15:07:48,036 INFO app: Language selection: ip=74.7.227.169 country='' lang=en
2026-01-06 15:07:50,899 INFO app: Language selection: ip=74.7.227.169 country='' lang=en
2026-01-06 15:07:55,712 INFO app: Language selection: ip=74.7.227.169 country='' lang=en
2026-01-06 15:07:57,767 INFO app: Language selection: ip=74.7.227.169 country='' lang=en
2026-01-06 15:26:31,411 INFO app: Language selection: ip=185.217.232.181 country='' lang=cs
2026-01-06 15:34:00,883 INFO app: Language selection: ip=41.227.23.238 country='' lang=en
2026-01-06 16:04:57,881 INFO app: Language selection: ip=34.143.175.95 country='SG' lang=en
2026-01-06 16:10:17,124 INFO app: Language selection: ip=84.254.106.197 country='' lang=en
2026-01-06 16:22:23,545 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:22:59,302 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:23:02,445 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:23:35,033 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:23:40,586 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:23:47,101 INFO app: Language selection: ip=189.164.163.70 country='' lang=en
2026-01-06 16:27:03,994 INFO app: Language selection: ip=34.56.68.237 country='' lang=en
2026-01-06 16:51:23,093 INFO app: Language selection: ip=144.217.163.247 country='CA' lang=en
2026-01-06 16:51:23,715 INFO app: Language selection: ip=144.217.163.247 country='CA' lang=en
2026-01-06 17:38:48,877 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 17:38:55,388 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 18:39:30,284 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 18:39:35,727 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 18:39:35,728 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 18:39:41,757 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 18:54:53,335 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 18:54:54,228 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 18:59:15,701 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 18:59:15,700 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 18:59:20,592 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 18:59:25,099 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 18:59:31,271 INFO app: Failed admin login attempt from 78.80.37.222 user=admin
2026-01-06 18:59:31,578 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 18:59:47,983 INFO app: Admin logged in from 78.80.37.222
2026-01-06 18:59:48,347 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 19:00:18,705 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 19:01:34,058 INFO app: Language selection: ip=89.92.166.222 country='FR' lang=en
2026-01-06 19:01:37,121 INFO app: Language selection: ip=66.249.93.36 country='US' lang=en
2026-01-06 19:01:37,693 INFO app: Language selection: ip=66.249.93.35 country='US' lang=en
2026-01-06 19:01:38,047 INFO app: Language selection: ip=66.249.88.42 country='US' lang=en
2026-01-06 19:01:45,265 INFO app: Language selection: ip=84.254.106.197 country='CH' lang=en
2026-01-06 19:39:43,720 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 19:39:46,760 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 19:40:19,148 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 19:40:31,839 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 20:09:16,506 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:09:16,530 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:10:27,662 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 20:10:35,242 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 20:10:37,387 INFO app: Language selection: ip=78.80.37.222 country='CZ' lang=cs
2026-01-06 20:10:54,518 INFO app: Admin logged in from 78.80.37.222
2026-01-06 20:10:54,826 INFO app: Language selection: ip=78.80.37.222 country='' lang=cs
2026-01-06 20:11:52,751 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:11:59,981 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:12:00,025 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:13:26,297 INFO app: Admin logged in from 78.80.37.222
2026-01-06 20:39:12,195 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:39:18,976 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:39:18,987 INFO app: Logging initialized. Log file: /app/log/app.log
2026-01-06 20:39:28,862 INFO app: Admin logged out from 78.80.37.222
2026-01-06 20:39:37,260 INFO app: Admin logged in from 78.80.37.222
2026-01-07 05:19:31,229 INFO app: Failed admin login attempt from 78.80.37.222 user=admin
2026-01-07 05:19:43,895 INFO app: Admin logged in from 78.80.37.222
2026-01-07 06:29:05,568 INFO app: Admin logged in from 185.217.232.181
2026-01-07 18:12:55,974 INFO app: Admin logged in from 78.80.37.222
2026-01-08 13:56:36,131 INFO app: Admin logged in from 185.217.232.181
2026-01-08 13:57:16,932 INFO app: Admin logged in from 185.217.232.181
Back to home