Canasta is, at heart, a MediaWiki Docker image. There are other Docker images available for MediaWiki, but one big strength of Canasta is that it bundles in a variety of related software, including 10 skins and 152 extensions. Below are the list of skins and extensions that come included. By default, only the Vector skin, out of all of these skins and extensions, is actually "installed"; in order to install any of the rest in your container, you just have to add a call to wfLoadSkin() or wfLoadExtension() for it to your LocalSettings.php file.
There are (theoretically) dozens of skins, and over 1,000 extensions, available for MediaWiki. So how was the set of skins and extensions in Canasta decided on?
First, all of the skins and extensions that are bundled in with the official distribution of MediaWiki (5 skins and 30 extensions in all) are included in Canasta; see here for the full list.
Beyond this group, the general criteria are that they must work well with Canasta's MediaWiki version (1.39); they must be well-maintained, and be likely to remain well-maintained in the future; and they must provide important functionality that no other extension or skin that's included does.
Administrators who want to add some skin or extension that is not in this list to their wiki can easily do so in the standard way: by downloading it, adding it to either the skins/ or extensions/ directory, and adding the relevant call to either wfLoadSkin() or wfLoadExtension() to LocalSettings.php.
MediaWiki v. 1.39.1, in addition to many skins and extensions (see above)
Elasticsearch v. 7.10.2
Caddy
A sitemap auto-generation script, which stores the sitemap to the directory /var/www/mediawiki/w/sitemap
A variety of other utilities: ffmpeg, Git, ImageMagick, iputils-ping, Vim, etc.
A number of PHP and JSON files and directories (see below)
MediaWiki-related files and directories
Being a Docker image, Canasta places some files and directories in the host operating system as bind mounts - files and directories associated with the image but which are not contained in the Docker image's container itself, and which the administrator can thus modify, because they will not be removed or overwritten if the Docker image is updated. Canasta also stores the database outside of the Docker image, although this is stored as a volume (named "mysql-data-volume") and not a bind mount.
In Canasta, there are six bind mounts, which appear in the host OS as the files LocalSettings.php and composer.local.json, and the directories images/, extensions/, settings/ and skins/. Besides the database itself, these are the only six files or directories that administrators should modify.
An explanation of the relevant parts of the Canasta image:
LocalSettings.php - The standard main settings file of MediaWiki. In Canasta it is hidden from administrators, and very short: it simply includes two other files, CanastaDefaultSettings.php and CanastaUtils.php.
CanastaDefaultSettings.php - Holds a set of Canasta-specific default settings for MediaWiki variables like $wgScriptPath.
CustomSettings.php - By default, holds the settings, and extension and skin inclusions, that administrators want for this wiki. It appears to administrators as a file called LocalSettings.php.
CanastaUtils.php - A short file intended for utilities related to Canasta; for example, it holds code to warn administrators who do not have the $wgSMTP variable set.
composer.canasta.json - A Canasta-specific Composer file, meant for installing skins and extensions that require additional libraries.
composer.local.json - A wiki-specific Composer file, for installing the dependencies of additional skins and extensions (it cannot be used to directly download skins and extensions, only their dependencies).
canasta-extensions/ - A directory that holds all of Canasta's 100+ bundled extensions.
canasta-skins/ - A directory that holds all of Canasta's 9 bundled skins.
user-extensions/ - A directory that holds any locally-installed extensions.
user-skins/ - A directory that holds any locally-installed skins.
images/ - Simply MediaWiki's standard images/ directory. This the one part of core MediaWiki that is directly exposed to administrators.
settings/ - A directory that can optionally hold any additional PHP settings files that admins want to provide. Any such files are called after LocalSettings.php, in alphabetical order.
extensions/ - A directory that holds automatically-generated symlinks to extensions in both the canasta-extensions/ and user-extensions/ directories.
skins/ - A directory that holds automatically-generated symlinks to skins in both the canasta-skins/ and user-skins/ directories.