Sign inSign up

plsware/webdna

By plsware

•Updated 8 months ago

WebDNA is an easy-to-learn server-side scripting language for creating database-driven websites.

Image
Languages & frameworks
Web servers
0

711

plsware/webdna repository overview

⁠WebDNA 8.6.5 — Apache mod_webdna on Ubuntu 24.04 LTS

WebDNA⁠ is a server-side scripting language designed for building dynamic, database-driven websites. WebDNA code is interwoven directly into HTML files and interpreted by the WebDNA engine on the server before being sent to the browser — similar in concept to PHP but with its own built-in database engine and simple tag-based syntax.

For example, displaying today's date in WebDNA is as simple as:

<p>Today is [date]</p>

With both scripting and database features built-in, WebDNA adds powerful dynamic capabilities to any web site without the need for a separate database such as MySQL. MySQL can also be used as a database with further configuration.


⁠What's in this image

  • Ubuntu 24.04 LTS (Noble Numbat)
  • Apache 2.4
  • libapache2-mod-webdna 8.6.5
  • WebCatalogEngine + WebDNAMonitor
  • WebDNA admin interface at /WebCatalog
  • Built-in demo store (Christophe's Tearoom) and reference documentation

⁠Quick Start

services:
  webdna:
    image: plsware/webdna:8.6.5
    platform: linux/amd64
    container_name: webdna-server-8-6-5
    ports:
      - "8080:80"
    volumes:
      - /opt/webdna/www:/var/www/html/sites
      - webdna-data:/usr/lib/cgi-bin/WebCatalogEngine/globals
      - webdna-logs:/var/log/apache2
    restart: unless-stopped

volumes:
  webdna-data:
    name: webdna-server-8-6-5-data
  webdna-logs:
    name: webdna-server-8-6-5-logs

Save this as docker-compose.yml and run:

mkdir -p /opt/webdna/www
docker compose up -d

⁠Apple Silicon (M1 / M2 / M3 / M4)

This image is currently built for linux/amd64 only. A native arm64 build is planned.

Pulling from the Docker Desktop GUI will fail with HTTP 404: Not Found. This is misleading — the image exists, but Docker Desktop does not let you specify a platform when pulling, so it cannot find an arm64 variant. Use the command line instead:

docker pull --platform linux/amd64 plsware/webdna:8.6.5

The docker-compose.yml above already includes platform: linux/amd64, so docker compose up -d works without any changes.

To avoid specifying the platform every time, set it for your shell:

export DOCKER_DEFAULT_PLATFORM=linux/amd64

Enable Rosetta in Docker Desktop under Settings → General → "Use Rosetta for x86/amd64 emulation on Apple Silicon". Without it, Docker falls back to QEMU, which is significantly slower and less reliable with Ubuntu 24.04 images.

Emulated containers are suitable for evaluation and development. They are not suitable for production or for performance testing — emulation will not reflect the multi-threading behaviour that a paid licence unlocks.


⁠Accessing WebDNA

URLPurpose
http://your-host:8080/WebCatalogWebDNA admin interface
http://your-host:8080/WebCatalog/christophes_tearoom/Built-in demo store
http://your-host:8080/sites/Your own site files

WebDNA admin login: admin / admin


⁠Your Site Files

Place your .dna files in /opt/webdna/www on the host. They will be served from http://your-host:8080/sites/.

Important: Do not mount a volume directly to /var/www/html — this will hide the WebCatalog admin directory. Always mount to a subdirectory such as /var/www/html/sites.


⁠Volumes

VolumePurpose
/opt/webdna/wwwYour site files (bind mount)
webdna-server-8-6-5-dataWebDNA globals and databases (persisted)
webdna-server-8-6-5-logsApache logs (persisted)

⁠Build from Source

Full source including Dockerfile, entrypoint.sh and documentation is available on GitHub.

git clone https://github.com/plsoftware/webdna-docker.git
cd webdna-docker
chmod +x entrypoint.sh
docker build -t webdna:8.6.5 .

⁠More About WebDNA

Tag summary

Content type

Image

Digest

sha256:d2a8fc550…

Size

73 MB

Last updated

8 months ago

docker pull plsware/webdna:8.6.5