Thank you for attending DockerCon 2020!Watch the recordings.
✕
Explore
Pricing
Sign In
Explore
swipl
product logo

swipl

Docker Official Images
SWI-Prolog offers a comprehensive free Prolog environment.
1M+
Container Linux ARM x86-64 ARM 64 Official Image
Linux - ARM ( latest )
Copy and paste to pull this image
View Available Tags
DescriptionReviewsTags

Quick reference

  • Maintained by: the SWI-Prolog community

  • Where to get help: the Docker Community Forums, the Docker Community Slack, or Stack Overflow

Supported tags and respective Dockerfile links

  • latest, stable, 8.2.0

Quick reference (cont.)

  • Where to file issues: https://github.com/SWI-Prolog/docker-swipl/issues

  • Supported architectures: (more info) amd64, arm32v7, arm64v8

  • Published image artifact details: repo-info repo's repos/swipl/ directory (history) (image metadata, transfer size, etc)

  • Image updates: official-images PRs with label library/swipl
    official-images repo's library/swipl file (history)

  • Source of this description: docs repo's swipl/ directory (history)

What is SWI-Prolog?

SWI-Prolog is a versatile implementation of the Prolog language. Its robust multi-threading, extended data types, unbounded arithmetic and Unicode representation of text allow for natural representation of documents (e.g., XML, JSON, RDF) and exchange of data with other programming paradigms.

wikipedia.org/wiki/Prolog

logo

How to use this image

Start a REPL

This image can be run directly to obtain an SWI-Prolog environment with most useful modules pre-built. When started without parameters, the SWI-Prolog REPL is launched automatically:

docker run -it swipl 

Build an image with your application

It is also useful to build images on top of this base image which rely on SWI-Prolog and provide their own default command:

FROM swipl
COPY . /app
CMD ["swipl", "/app/start.pl"]

This will extract and copy your source files to the image and then set the default command to run your application.

Differences from the SWI-Prolog source distribution

Excluded packages

  • jpl - interop with Java is excluded, as Java isn't included on the image
  • xpce - XPCE is excluded, as it's used only for the GUI platform

Included addins

This image includes several SWI-Prolog addins that are commonly used, complex to build, and require little additional space.

  • space
  • prosqlite
  • rocksdb*
  • hdt*
  • rserve_client

*excluded from ARM architecture images due to platform constraints

License

View the Simplified BSD license for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in the repo-info repository's swipl/ directory.

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

Why Docker
OverviewWhat is a Container
Products
Product Overview
Product Offerings
Docker DesktopDocker Hub
Features
Container RuntimeDeveloper ToolsDocker AppKubernetes
Developers
Getting StartedPlay with DockerCommunityOpen SourceDocsHub Release Notes
Company
About UsResourcesBlogCustomersPartnersNewsroomEvents and WebinarsCareersContact Us
© 2020 Docker Inc. All rights reserved | Terms of Service | Privacy | Legal