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
- Checkout: získání zdrojového kódu z Git repozitáře
- Install dependencies: pip install -r requirements.txt
- Run tests: unit & smoke tests
- Build image: docker build -t devops-web:latest .
- Push image (opc.): docker push registry.example/your-image:tag
- Deploy: docker-compose up -d nebo Kubernetes manifesty / Helm
- 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