chore: Update Docker configuration and documentation
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
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.
This commit is contained in:
51
README.md
51
README.md
@@ -34,6 +34,7 @@ A unified dashboard and integration hub for your homelab services. LabFusion pro
|
||||
|
||||
- Docker and Docker Compose
|
||||
- Git
|
||||
- Access to container registry (optional, for pre-built images)
|
||||
|
||||
### Installation
|
||||
|
||||
@@ -48,9 +49,14 @@ cd labfusion
|
||||
cp env.example .env
|
||||
```
|
||||
|
||||
3. Edit `.env` file with your service URLs and tokens:
|
||||
3. Edit `.env` file with your configuration:
|
||||
```bash
|
||||
# Update these with your actual service URLs and tokens
|
||||
# Docker Registry Configuration (for pre-built images)
|
||||
DOCKER_REGISTRY=gittea.kammenstraatha.duckdns.org/admin
|
||||
DOCKER_USERNAME=admin
|
||||
IMAGE_TAG=main
|
||||
|
||||
# Service Integration URLs (update with your actual service URLs and tokens)
|
||||
HOME_ASSISTANT_URL=http://homeassistant.local:8123
|
||||
HOME_ASSISTANT_TOKEN=your-ha-token-here
|
||||
FRIGATE_URL=http://frigate.local:5000
|
||||
@@ -61,9 +67,27 @@ IMMICH_API_KEY=your-immich-api-key-here
|
||||
|
||||
4. Start the services:
|
||||
```bash
|
||||
# Using pre-built images from registry (recommended)
|
||||
docker-compose up -d
|
||||
|
||||
# Or for development with local builds
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
```
|
||||
|
||||
**Docker Compatibility Issues?** If you encounter BuildKit cache errors (common with Docker 27.x), run our compatibility fix:
|
||||
|
||||
**Windows:**
|
||||
```powershell
|
||||
.\scripts\fix-docker-compatibility.ps1
|
||||
```
|
||||
|
||||
**Linux/macOS:**
|
||||
```bash
|
||||
./scripts/fix-docker-compatibility.sh
|
||||
```
|
||||
|
||||
See [Docker Compatibility Guide](docs/DOCKER_COMPATIBILITY.md) for detailed troubleshooting.
|
||||
|
||||
5. Access the application:
|
||||
- Frontend: http://localhost:3000
|
||||
- API Gateway: http://localhost:8080
|
||||
@@ -155,6 +179,29 @@ npm start
|
||||
- **API Gateway**: http://localhost:8080/swagger-ui.html
|
||||
- **Service Adapters**: http://localhost:8000/docs
|
||||
|
||||
## Docker Deployment
|
||||
|
||||
LabFusion supports both pre-built images from container registries and local builds:
|
||||
|
||||
### Pre-built Images (Recommended)
|
||||
```bash
|
||||
# Configure registry settings in .env
|
||||
DOCKER_REGISTRY=gittea.kammenstraatha.duckdns.org/admin
|
||||
DOCKER_USERNAME=admin
|
||||
IMAGE_TAG=main
|
||||
|
||||
# Deploy with pre-built images
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### Local Development
|
||||
```bash
|
||||
# Build and run locally
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
```
|
||||
|
||||
For detailed deployment instructions, see [Docker Deployment Guide](docs/DOCKER_DEPLOYMENT.md).
|
||||
|
||||
## Roadmap
|
||||
|
||||
- [x] Basic project structure and Docker setup
|
||||
|
||||
Reference in New Issue
Block a user