Base image for Common Lisp projects with SBCL or CCL and latest ASDF, Qlot and Roswell
  • Common Lisp 52.1%
  • Dockerfile 26.8%
  • Shell 21.1%
Find a file
Alexander Artemenko 04eca9edc5
Merge pull request #3 from justjoheinz/sbcl/2.3.10
Update to sbcl 2.3.10
2023-11-07 12:54:41 +03:00
build.sh SBCL 2.1.2 2021-03-11 16:32:50 +03:00
ChangeLog.rst Update to sbcl 2.3.10 2023-11-07 09:28:49 +01:00
Dockerfile Update to sbcl 2.3.10 2023-11-07 09:28:49 +01:00
install-dependencies Script install-dependencies was fixed. 2018-04-18 08:38:48 +03:00
install-dependencies.ros Script install-dependencies was fixed. 2018-04-18 08:38:48 +03:00
Lakefile Version 0.17.0. Using Fukamachi's base image with roswell and SBCL. And move to SBCL 2.2.5 2022-09-06 06:54:54 +00:00
README.rst Replaced mgl-pax-minimal with 40ants-doc. 2021-04-23 17:05:25 +03:00

=================
 Base Lisp Image
=================

This is a base lisp image for 40Ants projects.

Latest version of this image is **0.14.0**.
It includes `Qlot`_ (0.10.8), `Roswell`_ (21.01.14.108), ASDF (3.3.4.13) and following Lisps:

* SBCL: 2.1.3
* Clozure CL: 1.11.5

Image is based on Ubuntu Focal (20.04 LTS).

It is hosted on the Docker Hub. Choose appropriate version in the
`ChangeLog`_ and download it from `DockerHub's releases`_ page.


How to use
==========

Quick start
-----------

Start container for development::

  docker run \
         --rm -ti \
         --name dev-lisp \
         -p 4005:4005 \
         -v `pwd`:/app \
         40ants/base-lisp-image:latest-sbcl-bin

And of cause you can use it as a base image in your own dockerfiles.


Inherit your own image from base-lisp-image
-------------------------------------------

Here is a minimal example:

.. code:: bash

   FROM 40ants/base-lisp-image:latest-sbcl-bin

   COPY qlfile qlfile.lock app-deps.asd /app/
   RUN install-dependencies

   COPY . /app

   EXPOSE 80
   CMD /app/entrypoint.sh


This way you can use this image for deployment of your application.


How to build a new image
========================

.. code::
   
   ./build.sh


Ideas
=====

* Embed `SLY`_ to make it available out of the box.

.. _SLY: http://joaotavora.github.io/sly/#A-SLY-tour-for-SLIME-users
.. _Roswell: https://github.com/roswell/roswell
.. _Qlot: https://github.com/fukamachi/qlot
.. _DockerHub's releases: https://hub.docker.com/r/40ants/base-lisp-image/tags/
.. _ChangeLog: ChangeLog.rst