DocKing - ShipSaaS
Docking GitHub
  • DocKing from ShipSaaS
  • Architecture
  • Requirements
  • PDF Engines
    • Gotenberg
    • WkHTMLtoPDF
    • mPDF
  • Upgrade Notes
    • v1.4.0
    • v1.3.2
    • v1.3.1
    • v1.3.0
    • v1.2.0
    • v1.1.2
    • v1.1.1
    • v1.1.0
  • Usage
    • Basic
    • Endpoints
    • Webhook
    • Maintain IDs/Keys from Services
  • Getting Started
    • Environment Variables
    • Run on Local
      • Normal Run
      • Docker
    • Storage
    • Console UI
    • Document Template
      • Gotenberg's Metadata
      • wkHTMLtoPDF's metadata
      • mPDF's metadata
    • Templating Mode
    • Fonts
    • Octane / High-perf mode
    • Localization
  • Deployment
    • Linux VPS / Dedicated Server
    • Docker
Powered by GitBook
On this page
  • Docker-Compose
  • Database notes
  1. Getting Started
  2. Run on Local

Docker

Use Docker to run DocKing in 1 line command

PreviousNormal RunNextStorage

Last updated 1 year ago

Single command away to run DocKing for development 😎

Image URL:

# Pull
docker pull ghcr.io/shipsaas/docking:latest

# Run
docker run -p 8888:80 ghcr.io/shipsaas/docking:latest

Then you can visit "https://localhost:8888" and use it in no time.

To check out more about the ENVs:

Docker-Compose

Sample compose file:

version: '3.9'

services:
  docking:
    image: "ghcr.io/shipsaas/docking-dev:latest"
    volumes:
      - app_storage:/var/www/html/storage/app
    links:
      - gotenberg
    ports:
      - '8888:80'

  gotenberg:
    image: gotenberg/gotenberg:7
    ports:
      - '9898:3000'

volumes:
  app_storage:

Note: app_storage contains the rendered PDF files.

Database notes

If you don't specify DB envs, by default DocKing will create a new SQLite database every time you run the image, which means:

  • Your data will be lost every time you turn off DocKing

To ensure your dev data won't be lost, there are 2 options

Mount SQLite file

If you wish to use SQLite & keep your data (for dev), you'd need to mount your SQLite file/folder into DocKing, e.g.:

docker run -p 8888:80 \
    -v /my/path/seth.sqlite:/var/www/html/seth.sqlite
    -e DATABASE_URL='sqlite:////var/www/html/seth.sqlite'
    ghcr.io/shipsaas/docking-dev:latest

Yeah it's weird to have 4 //// right, but that's how we have to define when using Laravel 🥺

Note:

  • When DocKing starts, it will print the UID & GID, so that you can hit the chown UID:GID your_sql.sqlite file

Use MySQL/PgSQL/SQL Server

As the title say 😆

https://github.com/shipsaas/docking
visit here