feat: rename Docker Watcher to Tinyforge
Build / build (push) Successful in 12m20s

Rebrand the project as Tinyforge to reflect its evolution from a Docker
container watcher into a self-hosted mini CI/deployment platform.

Rename covers: Go module path, Docker labels, DB/config filenames,
JWT issuer, Dockerfile binary, docker-compose, CI workflows, frontend
i18n, README with static sites docs, and all code comments.
This commit is contained in:
2026-04-12 21:30:23 +03:00
parent 8d2c5a063b
commit 791cd4d6af
68 changed files with 512 additions and 224 deletions
+4 -4
View File
@@ -7,11 +7,11 @@ import (
"github.com/moby/moby/client"
)
// Labels applied to all containers managed by docker-watcher.
// Labels applied to all containers managed by Tinyforge.
const (
LabelProject = "docker-watcher.project"
LabelStage = "docker-watcher.stage"
LabelInstanceID = "docker-watcher.instance-id"
LabelProject = "tinyforge.project"
LabelStage = "tinyforge.stage"
LabelInstanceID = "tinyforge.instance-id"
)
// Client wraps the Docker Engine API client.
+8 -8
View File
@@ -36,16 +36,16 @@ type ContainerConfig struct {
NetworkID string
// Labels are additional labels to apply to the container.
// docker-watcher management labels are added automatically via Project, Stage, and InstanceID.
// Tinyforge management labels are added automatically via Project, Stage, and InstanceID.
Labels map[string]string
// Project is the docker-watcher project name (used for labelling).
// Project is the Tinyforge project name (used for labelling).
Project string
// Stage is the docker-watcher stage name (used for labelling).
// Stage is the Tinyforge stage name (used for labelling).
Stage string
// InstanceID is the docker-watcher instance ID (used for labelling).
// InstanceID is the Tinyforge instance ID (used for labelling).
InstanceID string
// Mounts is a list of bind mounts to attach to the container.
@@ -88,7 +88,7 @@ func (c *Client) CreateContainer(ctx context.Context, cfg ContainerConfig) (stri
}
}
// Merge docker-watcher labels with any additional labels.
// Merge Tinyforge labels with any additional labels.
labels := make(map[string]string)
for k, v := range cfg.Labels {
labels[k] = v
@@ -198,7 +198,7 @@ func (c *Client) RestartContainer(ctx context.Context, containerID string, timeo
return nil
}
// ManagedContainer holds summary information about a container managed by docker-watcher.
// ManagedContainer holds summary information about a container managed by Tinyforge.
type ManagedContainer struct {
ID string
Name string
@@ -212,12 +212,12 @@ type ManagedContainer struct {
}
// ListContainers returns all containers matching the given label filters.
// Pass nil or an empty map to list all docker-watcher managed containers.
// Pass nil or an empty map to list all Tinyforge managed containers.
// Label filters are key=value pairs applied as Docker label filters.
func (c *Client) ListContainers(ctx context.Context, labelFilters map[string]string) ([]ManagedContainer, error) {
filterArgs := make(client.Filters)
// Always filter by the docker-watcher project label to only return managed containers.
// Always filter by the Tinyforge project label to only return managed containers.
filterArgs.Add("label", LabelProject)
for k, v := range labelFilters {
+1 -1
View File
@@ -32,7 +32,7 @@ func (c *Client) EnsureNetwork(ctx context.Context, networkName string) (string,
resp, err := c.api.NetworkCreate(ctx, networkName, client.NetworkCreateOptions{
Driver: "bridge",
Labels: map[string]string{
LabelProject: "docker-watcher",
LabelProject: "tinyforge",
},
})
if err != nil {