- Jelina overview
- JelinaOS
- Configuration examples
Example: container application deployment
This example demonstrates the full release-based workflow for deploying a containerized application on a JelinaOS device and can serve as a project delivery template.
Scenario
Section titled “Scenario”Deploy a web service on an edge device with release management, startup at boot, automatic fault recovery, and persistent data.
Step 1: Prepare the system
Section titled “Step 1: Prepare the system”- Complete JelinaOS installation.
- Complete basic setup under first boot and configuration.
- Connect to JelinaCloud and complete device registration.
- Verify that the container runtime is available:
docker version.
Step 2: Build and push the image
Section titled “Step 2: Build and push the image”Build the application image in your development environment and push it to a registry:
docker build -t registry.example.com/webapp:1.0.0 .docker push registry.example.com/webapp:1.0.0Step 3: Create a release
Section titled “Step 3: Create a release”Create a release in JelinaCloud and add the container application, including image, restart policy, environment variables, ports, and volumes. For detailed instructions, including application package uploads, see create a Release in JelinaCloud.
Step 4: Deploy to the device
Section titled “Step 4: Deploy to the device”Deploy the release to the target fleet; the device agent applies it automatically. Verify on the device:
docker ps # Container is runningcurl http://localhost:8080 # Service is accessibledocker logs webapp # Logs are normalStep 5: Verify supervision
Section titled “Step 5: Verify supervision”- Automatic fault recovery: After a simulated fault, the device agent restarts the application automatically.
- Startup at boot: After a device restart, the application resumes automatically.
- Data persistence: Data in the data partition remains intact after container upgrades and recreation.
Step 6: Release a new version (optional)
Section titled “Step 6: Release a new version (optional)”- Build and push a new image version.
- Create a new cloud release using the updated image version.
- Deploy it to devices for automatic upgrades.
- If problems arise, select the original version again to roll back.
Results
Section titled “Results”| Requirement | Implementation |
|---|---|
| Release management | Define applications in releases for centralized agent deployment |
| Startup at boot | Configure restart policies in the release for automatic recovery with the system |
| Automatic fault recovery | The device agent restarts failed applications |
| Data persistence | Mount data on the data partition |
| Version updates | Deploy new releases, with rollback support |
Related documentation
Section titled “Related documentation”- Containerized applications — Container application configuration
- Cloud application deployment and OTA — Release and update workflow
- Application management — Release system overview