Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ docker run -p 3333:3333 -v wigolo-data:/data \
ghcr.io/knockoutez/wigolo serve --host 0.0.0.0
```

The slim image lazy-loads models into the volume; `:full` preinstalls the browser engine. Also on Docker Hub as `towhid69420/wigolo`. → [installation & all channels](docs/installation.md)
The slim image lazy-loads models into the volume; `ghcr.io/knockoutez/wigolo:latest-full` preinstalls the browser engine. Versioned releases use the same `-full` suffix (for example, `0.2.1-full`). Also on Docker Hub as `towhid69420/wigolo`. → [installation & all channels](docs/installation.md)

### Agent skills

Expand Down
8 changes: 7 additions & 1 deletion docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,13 @@ docker compose -f packaging/compose.serve.yml up

The compose file binds `0.0.0.0` inside the container, which is a non-loopback bind: the daemon **fails closed** and refuses to start until you set `WIGOLO_API_TOKEN` (uncomment the line in the file) or explicitly opt into open access. Details in [self-hosting](./self-hosting.md).

The repo's `Dockerfile` also has a `full` build target with the browser engine preinstalled at build time — useful for `--rm`/no-volume runs where first-use downloads would repeat:
The published browser-preloaded image is `ghcr.io/knockoutez/wigolo:latest-full`; versioned releases use the same `-full` suffix (for example, `0.2.1-full`). It is useful for `--rm`/no-volume runs where first-use browser downloads would repeat:

```bash
docker run -i --rm ghcr.io/knockoutez/wigolo:latest-full
```

For local builds, the repo's `Dockerfile` exposes the corresponding `full` build target:

```bash
docker build --target full -t wigolo:full .
Expand Down
21 changes: 21 additions & 0 deletions tests/unit/documentation/docker-image-tags.test.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import { readFileSync } from 'node:fs';
import { dirname, join } from 'node:path';
import { fileURLToPath } from 'node:url';
import { describe, expect, it } from 'vitest';

const repoRoot = join(dirname(fileURLToPath(import.meta.url)), '..', '..', '..');
const readme = readFileSync(join(repoRoot, 'README.md'), 'utf-8');
const installationGuide = readFileSync(join(repoRoot, 'docs', 'installation.md'), 'utf-8');

describe('published Docker image tags', () => {
it('documents the published browser-preloaded image tag', () => {
expect(readme).toContain('ghcr.io/knockoutez/wigolo:latest-full');
expect(installationGuide).toContain('ghcr.io/knockoutez/wigolo:latest-full');
});

it('does not present the nonexistent :full tag as a published image', () => {
for (const document of [readme, installationGuide]) {
expect(document).not.toContain('ghcr.io/knockoutez/wigolo:full');
}
});
});
Comment thread
coderabbitai[bot] marked this conversation as resolved.
Loading