Skip to content
Back to skills

Containers

BSecurity

Uruchamianie i wdrażanie platformy Soneta (enova365, Triva) w kontenerach. Używaj gdy użytkownik: (1) stawia środowisko (server + web) na obrazach Soneta przez `docker compose` albo na Apple `container` / Container Desktop; (2) tworzy bazę danych w kontenerze (usługa init z `dbmgr create`, `--demo`, `--recreate`, licencja, konwersja); (3) wdraża na Kubernetes przez Helm (`helm repo add soneta`, `values.yaml`, `dblist`, `adminMode`); (4) wybiera wersję obrazów (tagi z Docker Hub `soneta/*` lub...

  • 9 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 5, 2026
devopsgobashsqldockerkubernetesawsapi

Works with

  • api

Security analysis

B75/100
  • criticalAccesses sensitive system or user directories

Pro scans all 8 files and shows the line behind each finding

Scanned September 21, 2026

npx -y skills add soneta/soneta-erp-skills --skill containers --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Containers?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Containers
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/soneta-containers/badge)](https://www.skillsdirectory.com/skills/soneta-containers)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: containers
description: >
  Uruchamianie i wdrażanie platformy Soneta (enova365, Triva) w kontenerach. Używaj gdy
  użytkownik: (1) stawia środowisko (server + web) na obrazach Soneta przez `docker compose`
  albo na Apple `container` / Container Desktop; (2) tworzy bazę danych w kontenerze (usługa
  init z `dbmgr create`, `--demo`, `--recreate`, licencja, konwersja); (3) wdraża na
  Kubernetes przez Helm (`helm repo add soneta`, `values.yaml`, `dblist`, `adminMode`); (4)
  wybiera wersję obrazów (tagi z Docker Hub `soneta/*` lub `registry.soneta.pl`), architekturę
  (alpine/arm64/amd64), logowanie do registry; (5) potrzebuje SQL Servera — zewnętrznego
  (`host.docker.internal` / `host.containers.internal`) albo jako kontener `mssql`; (6)
  rozwiązuje problemy startu stacku (kolejność, port zajęty, brak DNS między usługami w Apple
  container, zły host-alias). Słowa kluczowe: docker compose, docker-compose.yaml, apple
  container, Container Desktop, helm, kubernetes, obraz, tag, wersja, mssql, dbmgr, x-init,
  server.standard, web.standard.
---

# Soneta w kontenerach — uruchamianie i wdrażanie (enova365, Triva)

Skill dla **partnera lub zespołu Soneta**, który ma postawić i utrzymać środowisko Soneta w kontenerach
oraz założyć i zarządzać bazą — **bez dostępu do kodu programu**. Trzy ścieżki, wspólne
pojęcia. Składnię komend `dbmgr` opisuje `/soneta:tools` (nie duplikujemy jej tutaj).

## Którą ścieżką

| Ścieżka | Kiedy | Reference |
|---|---|---|
| **Docker Compose** | Domyślnie: lokalne środowisko test/demo, CI, jeden host. | [references/docker-compose.md](references/docker-compose.md) |
| **Apple `container` / Container Desktop** | macOS na Apple Silicon; wklejasz ten sam YAML do GUI. | [references/apple-container.md](references/apple-container.md) |
| **Helm / Kubernetes** | Wdrożenie na klaster (beta). | [references/helm-k8s.md](references/helm-k8s.md) |
| **Wybór wersji obrazów** | Zawsze — wspólne dla wszystkich ścieżek. | [references/obrazy-wersje.md](references/obrazy-wersje.md) |

## Wspólne pojęcia (dotyczą każdej ścieżki)

- **Obrazy:** `soneta/server.standard` (logika + serwer, ma w środku `dbmgr.dll`) oraz
  `soneta/web.standard` (aplikacja webowa). Rzadziej `web.api`, `web.wcf`.
- **Wersja = tag**, zawsze podawany jawnie (brak `latest`/`stable`). Docker Hub:
  `XXXX.X.X-alpine`; registry.soneta.pl (login): buildy alfa. Patrz `obrazy-wersje.md`.
- **SQL Server:** zewnętrzny (host lub osobny kontener) albo `mssql` w tym samym compose.
  Adres hosta: Docker → `host.docker.internal`, Apple container → `host.containers.internal`.
- **Baza powstaje raz** przez `dbmgr create <db> --mssql --sqlserver <host,port> --sqldb
  <db> --sqluser sa --sqlpwd <hasło> --demo gold --active --recreate` — jako usługa init
  reużywająca obrazu `server.standard`.
- **Licencja / dane:** `--demo silver|gold|platinum` (dane demo + licencja) lub `--licence`.

## Szybki start (Docker)

```bash
# 1. Skopiuj gotowy plik i podmień: tag wersji, hasło SA, host SQL.
cp assets/docker-compose.yaml ./docker-compose.yaml
# 2. Wystartuj (dbinit założy bazę, potem server, potem web):
docker compose up -d
# 3. Web: http://localhost:60000    Logi: docker compose logs -f
```

**Logowanie do web:** operatorem bazy demo (domyślny administrator). Hasło administratora
ustawisz przy tworzeniu (`dbmgr create --adminpwd`) albo zresetujesz później
(`dbmgr resetadminpwd`) — składnia w `/soneta:tools`.

**macOS / Container Desktop:** wklej **plik z kroku 1** (SQL zewnętrzny) do okna „Uruchom
Docker Compose", zmieniając host-alias (`host.docker.internal` → `host.containers.internal`) —
patrz [references/apple-container.md](references/apple-container.md). Wariantu z kontenerem
SQL (`docker-compose.mssql.yaml`) tam **nie używaj** (`x-init` nie doczeka się SQL).

Samowystarczalny wariant z kontenerem SQL (tylko Docker): `assets/docker-compose.mssql.yaml`.

## Checklisty

**Przed startem:** silnik działa (`docker`/`container`) · wybrany tag wersji · dostępny
SQL + znane hasło SA · wolne porty (np. 60000, 1433).

**Po starcie:** `dbinit` zakończony sukcesem (baza założona) · `server` wstał · `web`
odpowiada na porcie · nałożona licencja / dane `--demo`.

**Gdy nie działa:** port zajęty (zmień mapowanie) · zły host-alias (Docker vs Apple) ·
w Apple container brak DNS między usługami → wpisy `/etc/hosts` (robi to Container
Desktop) · `x-init` nie może zależeć od zwykłej usługi · brak `build:` w Apple container.

## Powiązane skille

- **`/soneta:tools`** — pełna składnia `dbmgr` (create/convert/backup/restore/licence/
  extensions) oraz źródło baz `docker:` w `SonetaFrame`. Tu tylko wołamy `dbmgr` w kontenerze.
- **`/soneta:config`** — znaczenie kluczy `appsettings.json`, domyślne porty i warstwy
  nadpisań przez zmienne `SONETA_...`
  ([appsettings.md](../config/references/appsettings.md)); import/eksport XML (role,
  uprawnienia, ustawienia) do bazy założonej w kontenerze.
- **`/soneta:programming`**, **`/soneta:addon-planning`** — kod i planowanie dodatku, który
  potem uruchomisz w tym środowisku.
- **`/soneta:erp`** — mapa wszystkich skilli platformy.

Files in this skill

  • SKILL.md5.1 KB
  • assets/docker-compose.mssql.yaml3.2 KB
  • assets/docker-compose.yaml3.1 KB
  • assets/values.example.yaml1.4 KB
  • references/apple-container.md4.5 KB
  • references/docker-compose.md6.5 KB
  • references/helm-k8s.md3.1 KB
  • references/obrazy-wersje.md2.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.