AKStream.Next · 文档中心

Docker Installation and Daily Management

Docker Installation and Daily Management

Docker creates a persistent deployment consisting of MySQL, AKStream.Next, the bundled media service, and NodeAgent. It suits users familiar with containers and port mapping; native Linux systemd installation is usually easier to troubleshoot for first-time Docker users.

flowchart LR
    A[Docker Compose] --> B[MySQL]
    A --> C[AKStream.Next]
    A --> D[MediaServer]
    A --> E[NodeAgent]
    C --> F[Persistent host Config / Data]

Prerequisites

docker version
docker info
docker compose version

Docker Compose V2 must be used, specifically docker compose. NodeAgent requires access to the Docker socket to execute fixed lifecycle actions when the main container is offline; Docker socket permissions are equivalent to high-level host privileges and must not be granted to ordinary business users.

Installation Using the Official Image

./Deploy/docker/akstream-next.sh install \
  --root /srv/AKStream.Next-Docker \
  --skip-build \
  --image akstream-next:<version>

Use the image name and version from the delivery manifest. --skip-build uses an image that already exists or can be pulled from the licensed registry.

Persistence Directories

The default root directory is ~/AKStream.Next-Docker:

AKStream.Next-Docker/
├── Config/          Main configuration, Agent configuration, and generated secrets
├── Data/            Logs, security keys, and runtime data
├── Recordings/      Recording files
├── MediaServer/     Media-service configuration and media data
├── MySql/           MySQL data directory
└── compose.yml      Current Compose file

Back up at least Config, MySql, Recordings, and the media data required by your service. Images alone cannot restore the system.

Common Commands

After installation, the Docker host receives akn, with the deployment root recorded in its managed wrapper:

akn status
akn start
akn restart
akn stop

Run it on the Docker host, never inside the akstream-next container. With Docker Desktop on Windows, use the WSL distribution where the installer ran. See the akn command guide.

View containers and logs:

docker ps -a --filter name=akstream-next
docker logs --tail 200 akstream-next-mysql
docker logs --tail 200 akstream-next
docker logs --tail 200 akstream-next-agent
curl -fsS http://127.0.0.1:5800/health

Updates

The installer remembers the current delivery version and image source:

akn update

Back up persistent directories before updating, and record the current image and database versions. Container and database rollbacks must be one coordinated plan; do not simply switch to an older image.

Ports and Public Network

The default WebUI/API host port is 5800. SIP, RTSP, RTMP, WebRTC, RTP, and TURN also require TCP/UDP mappings based on enabled capabilities. Public IP, NAT, and port ranges must use values clients can actually reach.

Do not expose MySQL or media-service management ports to the public network by default. See Ports, Domains, HTTPS, and NAT for the complete list.

Recovery Validation and Uninstallation

verify-recovery will cause the main container process to exit and verify the restart policy, which will inevitably interrupt business operations:

akn verify-recovery

Running akn uninstall asks whether to retain Config/MySQL/recordings or completely remove the deployment root, and confirms complete cleanup again. --purge --yes is only for explicitly authorized unattended operation. Do not use manual container deletion as a substitute for backup and controlled uninstallation.

Download a complete package and import offline

The website provides a complete installer assembled and verified on the server, with resumable downloads. Each GitHub Release asset must be below 2 GiB. When downloading a large package directly from GitHub, obtain all .partNNN files, .parts.json, .parts.sha256 and the join script with the same prefix. Keep them in one directory and never mix versions or architectures.

On Linux/macOS, run the corresponding script, for example:

bash AKStream.Next-1.0.0.164-docker-linux-amd64.tar.gz.join.sh

On Windows, run its PowerShell script:

powershell -NoProfile -ExecutionPolicy Bypass -File .\AKStream.Next-1.0.0.164-docker-linux-amd64.tar.gz.join.ps1

The scripts verify every part and the complete archive, without overwriting an existing destination. For an offline server, download on a connected computer and copy the full set. Join and extract it, run docker load -i akstream-next-image.tar, then follow INSTALL.md. If mysql-8.4-image.tar is included, also run docker load -i mysql-8.4-image.tar. Otherwise prepare it on a connected machine with the same architecture using docker pull mysql:8.4 and docker save -o mysql-8.4-image.tar mysql:8.4; copy, verify its SHA and import it. Both application and database images must be available before offline installation.

Model weights and large CUDA/OpenVINO runtime bundles are downloaded separately from https://softnvr.com/#model-weights. Verify SHA256, extract and mount them read-only using compose.models.yml or the hardware overlay. Keep downloads in persistent host directories across container upgrades; customers do not convert weights. Complete uninstall clears the configured or default managed vector storage; normal uninstall retains data. Back up Config, security keys, database, recordings and vectors before upgrades.