Some checks failed
API Docs (Node.js Express) / test (20) (push) Failing after 1m49s
API Docs (Node.js Express) / build (push) Has been skipped
API Gateway (Java Spring Boot) / test (17) (push) Failing after 3m18s
Docker Build and Push / setup (push) Successful in 10s
API Gateway (Java Spring Boot) / test (21) (push) Successful in 1m56s
API Gateway (Java Spring Boot) / build (push) Has been skipped
Docker Build and Push / build-push-service-adapters (push) Failing after 29s
Docker Build and Push / build-push-api-gateway (push) Failing after 32s
Docker Build and Push / build-push-api-docs (push) Failing after 31s
Docker Build and Push / build-push-frontend (push) Failing after 28s
Docker Build and Push / test-compatibility (push) Has been skipped
Integration Tests / integration-tests (push) Failing after 2m47s
Integration Tests / performance-tests (push) Has been skipped
### Summary of Changes - Enhanced `docker-compose` files to include BuildKit compatibility settings for improved caching during builds. - Updated service definitions to use pre-built images from the specified Docker registry, ensuring consistency across environments. - Added Docker registry configuration to the `.env` example file for clarity on deployment settings. - Revised the `README.md` to include instructions for using pre-built images and local development setups, along with Docker compatibility troubleshooting steps. - Introduced health checks in the `Dockerfile` for the API Docs service to ensure container readiness. ### Expected Results - Improved build performance and deployment clarity, facilitating easier setup for new developers and enhancing overall project maintainability.
4.9 KiB
4.9 KiB
LabFusion Gitea Registry Deployment
This guide explains how to deploy LabFusion using images from your Gitea container registry.
Registry Information
- Registry URL:
gittea.kammenstraatha.duckdns.org/admin - Username:
admin - Image Tag:
main
Quick Start
1. Authentication
First, authenticate with your Gitea registry:
# Login to Gitea registry
docker login gittea.kammenstraatha.duckdns.org/admin
# Enter your Gitea username and password when prompted
2. Configuration
The Docker Compose files are already configured to use your Gitea registry by default. No additional configuration is needed unless you want to override the defaults.
Default Configuration:
DOCKER_REGISTRY=gittea.kammenstraatha.duckdns.org/admin
DOCKER_USERNAME=admin
IMAGE_TAG=main
3. Deploy
# Production deployment
docker-compose up -d
# Development deployment (with volume mounts)
docker-compose -f docker-compose.dev.yml up -d
Image URLs
Your LabFusion images are available at:
- API Gateway:
gittea.kammenstraatha.duckdns.org/admin/api-gateway:main - Service Adapters:
gittea.kammenstraatha.duckdns.org/admin/service-adapters:main - Frontend:
gittea.kammenstraatha.duckdns.org/admin/frontend:main - API Docs:
gittea.kammenstraatha.duckdns.org/admin/api-docs:main
Verification
Check if images are accessible:
# Test pulling each image
docker pull gittea.kammenstraatha.duckdns.org/admin/api-gateway:main
docker pull gittea.kammenstraatha.duckdns.org/admin/service-adapters:main
docker pull gittea.kammenstraatha.duckdns.org/admin/frontend:main
docker pull gittea.kammenstraatha.duckdns.org/admin/api-docs:main
Check running services:
# View running containers
docker-compose ps
# Check logs
docker-compose logs api-gateway
docker-compose logs service-adapters
docker-compose logs frontend
docker-compose logs api-docs
Troubleshooting
Common Issues
-
Authentication Failed:
# Re-authenticate docker logout gittea.kammenstraatha.duckdns.org/admin docker login gittea.kammenstraatha.duckdns.org/admin -
Image Not Found:
# Check if images exist in registry curl -u admin:password https://gittea.kammenstraatha.duckdns.org/admin/v2/_catalog -
Network Issues:
# Test connectivity ping gittea.kammenstraatha.duckdns.org curl -I https://gittea.kammenstraatha.duckdns.org/admin/v2/ -
Permission Denied:
- Verify you have access to the
adminorganization - Check if the images are public or require authentication
- Ensure your Gitea account has the necessary permissions
- Verify you have access to the
Debug Commands
# Check Docker daemon logs
docker system events
# Inspect image details
docker inspect gittea.kammenstraatha.duckdns.org/admin/api-gateway:main
# Check registry connectivity
docker pull gittea.kammenstraatha.duckdns.org/admin/api-gateway:main
Environment Variables
You can override the default registry settings by setting environment variables:
# Use different tag
export IMAGE_TAG=v1.0.0
docker-compose up -d
# Use different registry (if you have multiple)
export DOCKER_REGISTRY=your-other-registry.com
export DOCKER_USERNAME=your-username
docker-compose up -d
CI/CD Integration
If you're using Gitea Actions to build and push images, ensure your workflow pushes to the correct registry:
# Example Gitea Actions workflow
- name: Build and Push Images
run: |
# Build and tag images
docker build -t gittea.kammenstraatha.duckdns.org/admin/api-gateway:main ./services/api-gateway
docker build -t gittea.kammenstraatha.duckdns.org/admin/service-adapters:main ./services/service-adapters
docker build -t gittea.kammenstraatha.duckdns.org/admin/frontend:main ./frontend
docker build -t gittea.kammenstraatha.duckdns.org/admin/api-docs:main ./services/api-docs
# Push to registry
docker push gittea.kammenstraatha.duckdns.org/admin/api-gateway:main
docker push gittea.kammenstraatha.duckdns.org/admin/service-adapters:main
docker push gittea.kammenstraatha.duckdns.org/admin/frontend:main
docker push gittea.kammenstraatha.duckdns.org/admin/api-docs:main
Security Considerations
- Authentication: Always authenticate before pulling images
- HTTPS: Ensure your Gitea registry uses HTTPS
- Access Control: Verify that only authorized users can access the images
- Image Scanning: Regularly scan images for vulnerabilities
- Updates: Keep images updated with security patches
Support
If you encounter issues with the Gitea registry deployment:
- Check the troubleshooting section above
- Verify your Gitea registry configuration
- Check network connectivity to
gittea.kammenstraatha.duckdns.org - Ensure you have proper permissions in the
adminorganization - Review Docker and Docker Compose logs for detailed error messages