❗IMPORTANT: This release addresses a bug in the update process introduced in v1.17.0.
Please use the command below to force the update to this release.
DOCKSAL_VERSION=v1.18.2 fin update
- fin v1.113.2
- Refactored version overrides during updates
- Replaced the legacy set-output command in GitHub Actions
❗IMPORTANT: This release addresses a bug in the update process introduced in v1.17.0.
Please use the command below to force the update to this release.
DOCKSAL_VERSION=v1.18.1 fin update
- fin v1.113.0
- Fixed network issues after project stack stop/restart
- Fixed update process
- Switched CI builds to
actions/checkout@v3
- Updated Docker Desktop links in setup.md docs
- fin v1.112.0
- Docker Desktop v4.17.0
- Docker v20.10.23
- Docker Compose v2.15.1
- VirtualBox v6.1.42
- New image versions
- Switched all stacks to PHP 8.1 (
docksal/cli:php8.1-3.3
image)
- macOS Ventura 13.0 compatibility
- Adjusted NFS mount read/write buffers
- Ubuntu 22.04 compatibility
- Made
DOCKSAL_ENVIRONMENT
variable visible in custom commands and add-ons by default - Updated Solr version to v7 for the Acquia stack
- Fixed
fin image registry <image_name>
command - Fixed
fin share
command - Fixed network settings in Gitpod
- Updated the list of options for
fin project create
(added Drupal 10 options, removed Drupal 8) - Updated
xhprof
image to work with arm64/Apple Silicone - Switched
cloudflared
service to the officialcloudflare/cloudflared
image (which now supports arm64) - Dropped legacy xdebug v2
remote_host
option in stack configs - Improved fin sysinfo output (added green/red colors for PASS/FAIL tests)
- Adding Mutagen option in Shared Volumes docs
- Updated PHP version docs
- Removed Solr 4 instructions and updated the listed default version to Solr 8
- Various small updates
@lmakarov, @froboy, @paulsheldrake, @shelane, @halisonfernandes, @obriat, @khaledzaidan, @nicoschi, @shaal, @matthiasseghers, @eloso-uk, @sean-e-dietrich, @danshumaker, @rosenstrauch, @jasonawant, @anpolimus,
@markaspot, @lpeabody, @alexander-danilenko, @andreyzb, @twfahey1, @johnoltman65, ❤️ You ❤️
- fin v1.110.1
- Docker Desktop v4.4.2+ (build 73305)
- Docker v20.10.12 (boot2docker pinned at v19.03.5)
- Docker Compose v2.1.0
- VirtualBox v6.1.32
- New multi-arch (amd64/arm64) image releases
- PHP 8.1 is now the default version in the
default
stack and infin run cli
command- See docs on switching/pinning PHP versions
- 🎉 Apple M1 and Linux ARM64 support 🎉
- All services in the Docksal catalog (except
solr
andmailhog
) now use multi-arch (amd64/arm64) images
- All services in the Docksal catalog (except
- Switched to Docker Compose v2 (v1 support dropped)
- Running v2 in compatibility mode (forces the use underscores instead of hyphens in container names (like in v1)).
- Use of
.docksal
base domain along withdocksal-dns
internal DNS resolver is deprecated- Follow the instructions to switch to the new public base domain -
.docksal.site
- Follow the instructions to switch to the new public base domain -
- New
fin share-v2
command- Creates a temporary public URL for the project using a free Cloudflare Tunnel
- Project auto-start is now disabled by default for local environments (still ON by default for CI environments)
- Included Docksal version in
fin --version
output- no more confusion which Docksal vs fin version you are running
- Gitpod Integration
fin pull
is now an addon (removed from fin core)- Fixed VirtualBox support on macOS 12 Monterey
- Removed Drupal 8 options from
fin project create
(Drupal 8 is EOL) - Bumped all services to the most recent image tags
- We'll stick to the most recent versions by default and pin versions in hosting platform specific stacks
- Current default versions:
- Apache 2.4
- Nginx 1.20
- MySQL 8.0
- MariaDB 10.6
- Postgres 14.2
- PHP 8.1
- Varnish 7.0
- Memcached 1.6
- Redis 6.2
- Solr 8.6-edge (legacy image, likely to be deprecated)
- Mailhog 1.0.1
- Elasticsearch 8.1.2
- cloudflared
latest
(has to stay onlatest
as Cloudflare makes frequent updates and blocks older client versions)
- Switched to MariaDB 10.4 as the default
db
service in all hosting platform stacks- MariaDB 10.4 functions as limited drop-in replacements for MySQL 5.7, as far as InnoDB is concerned
- Updated Acquia stack versions
- Apache 2.4
- MariaDB 10.4 (MySQL 5.7 drop-in replacement)
- PHP 7.4
- Varnish 6.6
- Memcached 1.6
- Apache Solr 4.5
- Updated Pantheon stack image versions
- Nginx 1.20
- MariaDB 10.4 (MySQL 5.7 drop-in replacement)
- PHP 7.4
- Varnish 6.6
- Redis 5.0
- Apache Solr 3.6
- Updated Platform.sh stack image versions
- Nginx 1.20
- MariaDB 10.4 (MySQL 5.7 drop-in replacement)
- PHP 7.4
- Redis 5.0
- Switched to Blackfire Agent v2 in stacks (requires docksal/cli v3.1.0+)
- Expanded docs around project auto start/stop features
- Added instructions for installing an addon globally
- Added documentation on composer memory issues
- Reorganized and updated help sections in fin + misc updates in
fin help
- Added disk space issue to common issues
- Updated MailHog docs
- Added Github Actions build badge in README.md
- Added section on common issues for Apple MDM (Mobile Device Management) troubleshooting
- Updated docs around disabling built-in DNS resolver (docksal-dns)
- Added Cloudflare Tunnel (
fin share-v2
) docs - Added example on how to override
solr
service image - Added sponsor documentation
- @lmakarov, @sean-e-dietrich, @shelane, @froboy, @waako, @marvoey, @paulsheldrake, @vladtulku, @JDDoesDev
- @markaspot, @froboy, @lpeabody, @alexander-danilenko, @paulsheldrake, @610, @twfahey1, @johnoltman65
- ❤️ You ❤️
- fin v1.107.1
- Fixed terminal colors in
fin
broken on some systems after update to v1.16.1
- fin v1.107.0
- Use
ifconfig
command instead ofip
command on Mac - Minor refactoring in Github Actions
- Minor changes to UI in
fin
- Revised terminal colors and notification types
- Simplified troubleshooting docs around Docker Machine TLS certs
- Replaced references to Gitter with GitHub Discussions
- Added documentation for the
HOSTING_*
variables on the configuration variables page
- fin v1.106.0
- Docker Desktop v3.4.0 (65384)
- Docker v20.10.7
- Docker Compose v1.29.2
- VirtualBox v6.1.22
- Switched
vhost-proxy
service to docksal/vhost-proxy:1.7 (multi-arch amd64/arm64 image) - Switched
cli
service andrun-cli
command to docksal/cli:php7.4-3.0- This is a major version upgrade of the image
- arm64 support
- PHP 8.0 image
- Xdebug v3 PHP extension
- Dropped some tools, not all tools available for arm64, terminus not available for PHP 8.0
- Switched
mysql
service to docksal/mysql:5.7-1.5
- Switched stack files to Docker Compose file format v3.9
- As the
"version"
property is now optional, this change is fully backwards compatible with the existing2.1
stack files. - Moved
dns
,healthchecks
, andlogging
settings intox-common-settings
inservices.yml
(yaml anchors are now supported!)
- As the
- Platform.sh alike stack (
stack-platformsh.yml
) based on platformsh-templates/drupal9 fin acli
to top level command (using acquia/cli)
- Switched from Travis CI to Github Actions for CI/CD
- Enhanced NFS diagnostics in
fin sysinfo
- Showing
nfsd status
andshowmount -e
- Showing
- Allow addons/scripts to use variables and functions defined in
fin
by sourcing it (source $(which fin)
) - Removed deprecated
services/web
- Fixed NFS mounts with Docker Desktop (Virtualization Framework/M1) in macOS Big Sur
- Added check for existing host name before adding to eliminate duplicates
- Replaced
which
withcommand
in shell function wrappers (pwd
,docker
,docker-compose
) (#1496) - Dropped
docker-machine
wrapper, as microsoft/WSL#4078 is now resolved. - Fixed exit code at the end of
fin update
- without this,fin update
would exit with0
even if there were errors during the update process. - Updated XHProf service to work with XHProf 2.x and 3.x (#1507)
- Updated IDE settings for XDebug v3 compatibility
- Preserving compatibility with XDebug v2
- This will prevent breaking changes for custom stacks or stacks that pin the
CLI_IMAGE
version to a version with XDebug v2 (docksal/cli
v2.12 and below).
- This will prevent breaking changes for custom stacks or stacks that pin the
- Added sponsor prompt after
fin update
- Using
busybox
instead ofdocksal/empty
image inis_docker_path
check (busybox is multi-arch) Included WSL in Windows usage reporting
- Added documentation for Xdebug 3
- Added documentation for Platform.sh alike stack
- Bumped WSL Ubuntu v20.04 in docs
- Added warning for changing volume mount type (#1486)
- Update docs for Acquia CLI (acquia/cli) and add to top level commands (#1481)
- Updated drush links in doc for
fin pull
- Blocked search engines on feature/version branches of the docs
- Added a redirect for a most common URLs linking to the old RTD docs website
- Added documentation version link for develop branch as "Upcoming"
- Added example and help on obtaining info on latest available images
- Added documentation on routing to a custom port (#1526)
- Created
CODEOWNERS
- Added Feedback button in docs (#1527)
- Switched to CarbonAds in docs
- Switches community support to GitHub discussions
- Added GitHub Discussions link to docs sidebar menu
- Added
COMPOSER_DEFAULT_VERSION
inservices.yml
to support Composer version switching instructions in docs - Improved flushing DNS cache on macOS
fin sysinfo
improvements- rearranged items to be more logical
- print NFS settings for macOS regardless of the mode (VBOx or Docker Desktop)
- print
DOCKER_HOST
unconditionally (may be helpful in any case) - list all projects, not just active
- added connectivity checks
- added debug information if host DNS check fails
- Added container logging options to
docksal-dns
anddocksal-ssh-agent
services - Added
DOCKSAL_CONTAINER_HEALTHCHECK_INTERVAL
option- Can be used to increase container healthcheck interval and thus help with excessive load produced by healthchecks from many concurrently running containers.
- Defaults to 10s
- Minor improvements in tests
- Moved Composer version docs to tools/composer
- Added "Applications" section
- Moved Drupal and Wordpress docs to a new section
- Added Wordpress HTTPS docs
- Fixed links and typos in docs
- fin v1.102.0
- Docker Desktop v2.5.0.1 (49550)
- Docker v19.03.13 (boot2docker pinned at 19.03.5)
- Docker Compose v1.27.4
- VirtualBox v6.1.16
- Switched
cli
service todocksal/cli:2.12-php7.3
- Dropped PHP 7.2 (EOL as of 30 Nov 2020)
- Added Composer v2 (default) with ability to pin to Composer v1
- Updated NodeJs to the latest LTS release v14.15.0
- Version bumps for other console tools and runtimes
- See https://github.com/docksal/service-cli/releases/tag/v2.12.0 for more details.
- Switched
postgres
service topostgres:10.14-alpine
- Drupal 9 requires PostgreSQL 10+
- macOS Big Sur support
- Update for Elasticsearch 7 compatibility
- Adjusted approach to mounting ssh-agent socket in cli (#1391)
- Prevent PTY allocation for mysql when no TTY is available (#1394)
- Fixed
SSH_AUTH_SOCK_DIR
owner in cases when the volume directory has been already created by docker (root user) - Fixed target repositories to match project create selection
- Increased precision in
ver_to_int
to 4 positions to correctly handle Docker Desktop's a.b.c.d (4 positions) version schema - Fixed
docker_desktop_version
check on Windows for recent Docksal Desktop versions - Fixed bind mounts on Docker Desktop for Mac/Windows v2.3.0.2+
- Changed the value for
DOCKASL_VOLUME=disabled
("DOCKASL_VOLUME=disable" => "DOCKASL_VOLUME=disabled") - Removed Acquia drush commands (Acquia Cloud API v1 is EOL)
- Added support for branch name when using a custom git repo in
fin project create
- Updated troubleshooting docs on conflicting ports (how to identify which process uses a port)
- Updated VPN troubleshooting docs
- Mentioned that the VPN workaround is only possible with Docker Desktop for Mac/Windows (see #1397)
- Added docs for missing SSE4.2 CPU instruction set (#1414)
- Fixed Dockerfile example to use proper shell in "Extending Stock Images" docs
- Fixed ssh-key help message
- Added documentation for the Acquia CLI tool (#1387)
- Using entirely custom docker-compose configurations
- Refactored stack configuration docs
- Added Composer version docs in service/cli/settings
- Fixed internal linking in docs
- Wordpress multisite settings
- Updated project's README on GitHub
- fin v1.99.0
- Updated projects to include Drupal 9 boilerplate projects (#1385)
- Reverted back to using IP binding for system services with VirtualBox/boot2docker
- Only use
0.0.0.0
for vhost-proxy and dns with Docker Desktop 2.2.0.0+ on Mac/Windows
- Only use
- Bump
REQUIREMENTS_DOCKER_DESKTOP
to 2.1.0.5- This is the last version before networking regressions were introduced (#1268)
- Split docker versions based on environment (Linux, Docker Desktop, Boo2docker)
REQUIREMENTS_DOCKER='19.03.9'
- this is the earliest version available for Ubuntu 20.04 (focal) LTSREQUIREMENTS_DOCKER_DD='19.03.8'
- this is the latest version available with Docker DesktopREQUIREMENTS_DOCKER_B2D='19.03.5'
- this is the final boot2docker version- Removed
REQUIREMENTS_DOCKER_DEBIAN
- Better handling of
ID_LIKE
inis_debian
(#1377) - Added "DOCKSAL: NETWORKING" sections in sysinfo …
- Replaced "DOCKSAL: DNS"
- Prints network config variables
- Added check for DNS resolution/connectivity from containers (and not only host)
- Added dns settings for run-cli
- Updated versions in setup docs
- Added a note in setup docs about Docker Desktop version regressions
- fin v1.97.0
- VirtualBox v6.1.10
- docker v19.03.5 (v19.03.9 on Debian/Ubuntu)
- docker-compose v1.26.0
- Switched
vhost-proxy
to docksal/vhost-proxy:1.6 - Switched
cli
image to docksal/cli:2.11-php7.3
- Ubuntu 20.04 (focal) LTS support
- PHP 7.4 (docksal/cli:2.11-php7.4)
- Xhprof integration (#1270)
- Project autostart switch (#1285)
- Added
DOCKSAL_DNS_DISABLED
global config switch to allow disabling the build-indocksal-dns
service (#1376)- Use this as a transition to the new
docksal.site
base domain for projects - Helps address the DNS port binding issue on macOS (
listen udp 0.0.0.0:53: bind: address already in use
)
- Use this as a transition to the new
- Added proxy variables to
fin run-cli
(#1252) - Passing the database argument when running
fin db cli
(#1263) - Changed uuid generation method (#1287)
- Added a check that the VM IP matches what we expect
- Fixed issue "error while removing network: network id has active endpoints" (#1293)
- Fixed environment variables for
fin exec
running scripts (#1289) - Fixed issue with starting
cli
fromvhost-proxy
and missing ssh agent socket (#1291) - Fixed logic with
SSH_AUTH_SOCKET
(#1308) - Allow overriding
DOCKSAL_DNS_DOMAIN
with Docker Desktop 2.2.0.0+- If users want to stick with the
.docksal
TLD on Docker Desktop for Windows, they can do so by manually pinningDOCKSAL_DNS_DOMAIN
(fin config set --global DOCKSAL_DNS_DOMAIN=docksal
) and then usefin hosts add project.docksal
to manage DNS records using the OS hosts file.
- If users want to stick with the
- Added logging settings for system containers (#1354)
- Added a section for locally-trusted HTTPS certs using
mkcert
(#1370) - Explained SSH agent proxy functionality (#1253)
- Added a section for xhprof (#1270)
- Updated NFS mounts and configuration (#1261)
- Added troubleshooting docs for NFS issues on macOS Catalina (#1371)
- PostreSQL support in stacks (#564)
- Configuration information for Nginx
- Lots minor fixes in docs
- ElasticSearch persistent settings
- Docker container logging
- Adding a custom certificate for a project (#1359)
- Accessing environment variables in cron jobs (#1365)
- Updated DNS settings docs (#1376)
- fin v1.95.0
- Docker Desktop 2.3.0.2 compatibility fixes (Mac and Windows)
- Bind system services to
0.0.0.0
by default in virtualized environments (fixes #1268, fixes #1342) - Dropped the dependency on DockerNAT interface on Windows (fixes #1276)
- Do not configure DNS resolver with Docker Desktop for Windows
- Use the external
docksal.site
TLD with Docker Desktop for Windows v2.2.0.0+. This is necessary to have a working setup out of the box without the need to ask the user to manually configure DNS records using "fin hosts".
- Bind system services to
- Try the new external TDL for your Docksal projects!
Note: This option is enforced with Docker Desktop for Windows 2.2.0.0+
fin config set --global DOCKSAL_DNS_DOMAIN=docksal.site
- Added a section about setting/checking
DOCKSAL_VOLUMES
(#1275, #1296) - Added warnings in install docs about Docker Desktop versions (#1268)
- fin v1.93.0
- Added
IDE_PASSWORD
variable to IDE stack file (#1241) - Fixed Xdebug configuration issues (#1242)
- Updated
PHP_IDE_CONFIG
variable inservices.yml
- Added back xdebug settings workaround for backward compatibility (docksal#1238 (comment))
- Updated
- Fixed
SSH_AUTH_SOCK
being unset for custom commands (#1248) - Improved performance and functionality of
fin bash
(#1247) - Added
user
andshell
labels oncli
insercvice.yml
- Improved messaging in
ssh_key()
- Cleaned up items pending to be removed as per TODO notes
- Revamped Xdebug docs
- fin v1.92.2
- docker v19.03.4, docker-compose v1.24.1, docker-machine v0.16.2
- VirtualBox v5.2.34
- System services
- docksal/ssh-agent:1.3
- TCP proxy mode for SSH agent socket
- docksal/ssh-agent:1.3
- Stack services
- Switched cli to docksal/cli:2.10-php7.3 - PHP 7.3 is now the default version in all PHP stacks
- Switched to Debian 10 (Buster) based upstream PHP-FPM images
- PHP 5.6 and 7.0 and no longer supported
docksal/cli:2.6-php5.6
anddocksal/cli:2.6-php7.0
are the last images that included these EOL PHP versions
- VS Code Server integration
- See Coder Web IDE docs for more details
- Updated versions for cli tools
- Updated xdebug (v2.7.2), so it works with PHP 7.3 (docksal#1105)
- Added sqlsrv/pdo_sqlsrv extensions for PHP 7.3
- See docksal/cli v2.7.0+ release notes for more details
- Switched cli to docksal/cli:2.10-php7.3 - PHP 7.3 is now the default version in all PHP stacks
- Switched Docker Desktop to NFS volumes on Mac by default. See volumes docs for more details.
- Existing Mac users will need to manually switch to NFS mode. This ensures we do not break existing project stacks as the switch requires a
fin project reset
.
- Existing Mac users will need to manually switch to NFS mode. This ensures we do not break existing project stacks as the switch requires a
- IDE mode overhaul
- IDE runs in a separate container instead of inside
cli
- Requires
docksal/cli
v2.10+ - IDE URL is now
http://ide-${VIRTUAL_HOST}
(using dash instead of dot separator in the URL) - IDE URL is printed along with Project URL after "fin up" in the console output (when
IDE_ENABLED=1
)
- IDE runs in a separate container instead of inside
- Implemented ssh-agent forwarding on Linux, Mac and Windows
- Added
DOCKSAL_SSH_AGENT_USE_HOST
variable to control which ssh-agent is used (host vs docksal) (#1080). See variables docs for usage details. - Implemented an SSH proxy over TCP to support this use case on Mac and Windows (#1088)
- Added
- Allowed creating projects from a custom git repo (#1154)
- Example:
fin project create --name=myproject --repo=https://github.com/org/project.git
- Example:
- Fixed a regression in git binary detection on Mac (#1084)
- Fixes in provider integrations (
fin pull
)- switched to
drush8
for Acquia pull commands (#1087) - fixed issue where date on cached db isn't checked properly (#1092)
- fixed issue with backup ID retrieval in
provider_pull_acquia_db()
(#1093)
- switched to
- Increased custom command finding depth from 2 to 4 (#1116)
- Fixed compatibility with WSL in Windows 10 v1903 (#1103)
- Fixed installation issues on Play-with-Docker / Alpine (#1233)
- Added IPv6 localhost termination in
fin hosts add
(#766) - Added
DRUSH_OPTIONS_URI
to the cli service (#1115) - Including MySQL settings in
cli
service definition- With MySQL settings visible in
cli
, they can be assumed from the environment instead of having to hard-code in app code
- With MySQL settings visible in
- Generating actual default init script file in the init wizard
- Added
IMAGE_RUN_CLI
variable which can be used to override the image via the globaldocksal.env
- Added
fin config yml
as a quick way to export static config (#728) - Added
DOCKSAL_CONFIRM_YES
variable to allow auto-answering yes to all yes/no confirms (#1186) - Added Drupal 8 BLT version for project create option (#1175)
- Added
--quiet
option for fin ssh-key add command (#1179) - Made health check timeout configurable (#1178)
- Allowed setting shell and user for
fin exec
andfin bash
commands usingio.docksal.shell
andio.docksal.user
container labels (#1122) - Refactored tests, made them faster, simpler (#1207)
- Fixed the issue with
osxfs:cached
and named volumes (#1218) - Allowed VM primary and secondary storage capacity to be configurable. (#1222)
- Switched travis build to ubuntu 18.04 (bionic)
DOCKSAL_LOCK_UPDATES=1
now disables checks for updates. Previously, it would check, but not allow an update (#1081)- Added a prompt to review release notes after update
- Also opening release notes URL in a browser after update on Macs
- "Getting Started" docs overhaul
- Aiming for a straightforward experience for new users
- Two paths: 1) from scratch/existing project, 2) from a boilerplate repo
- Putting emphasis on
fin init
as a single step to bootstrap a project "from zero to hero"
- Revamped volumes documentation (#1221)
- Revamped variables documentation, added variable scope (#1173)
- Added Acquia BLT documentation (#1190)
- Added documentation for Portainer (#1170)
- Added macOS firewall troubleshooting docs (#1196)
- Added VPN troubleshooting docs (#1203)
- Added documentation on multisite setup (#1209)
- Added VS Code documentation (#1212)
- Added WordPress settings documentation (#1144)
- Added wording about what an addon is
- Added documentation on passing environment variables (#1128)
- Added message about RAM needed for composer projects (#1189)
- Added notice about spaces in project paths (#1134)
- Changed link of sample projects to the Docksal boilerplate list on Github (#1139)
- Updated boilerplate repo URLs
- Added warning about required index page in docroot in zero-config docs section (#1141)
- Updated
ngrok.yml
config file documentation (#1100) - Documented the cli
startup.sh
script (#751) - Updated xdebug docs (#1158)
- Updated phpcs docs (#1160)
- Removed
fin vm ip
command from documentation and listed the canonical Docksal IP - Fixed URL to edit docs
- Remove Babun mentions (#1204)
RELEASE CONTAINS BREAKING CHANGES
There was a breaking change in Docker 18.09.0.
If you are using VirtualBox mode (Boot2Docker), your VM will need to be reset during the update.
See Boot2Docker update for more information.
DEPRECATION NOTICE
- Versions of Windows prior to Windows 10 are no longer supported
- Babun (Windows) is deprecated and is no longer supported
- WSL is now the default and the only supported installation mode on Windows
- fin v1.86.2
- Fix condition in
fin exec
that prevented executing a command in an arbitrary container (#1074) - Call
xargs
in a cross-platform compatible way in fin cleanup (#1076)
- Updated
fin
command docs - Updated stock stacks description
RELEASE CONTAINS BREAKING CHANGES
There was a breaking change in Docker 18.09.0.
If you are using VirtualBox mode (Boot2Docker), your VM will need to be reset during the update.
See Boot2Docker update for more information.
DEPRECATION NOTICE
- Versions of Windows prior to Windows 10 are no longer supported
- Babun (Windows) is deprecated and is no longer supported
- WSL is now the default and the only supported installation mode on Windows
- fin v1.86.0
- Allowed custom commands and addons to be located in symlinked directories (#1036)
- Added a missing
--rm
in adocker run
call inis_docker_path
to cleanup existed containers (#1039, #1064) - Refactored
fin cleanup
- Not cleaning up dangling volumes not created/managed under Docksal (#1056)
- Improve error reporting:
- Error out if
DOCKSAL_STACK
definition is incorrect (#1051) - Error out
fin exec
if target container is not found (#1051)
- Error out if
- Removed
UNISON_USER
andUNISON_GROUP
fromvolumes-unison.yml
(#1049)- They are not needed anymore due to docksal/unison#7
- Reverted to using
wmic.exe
to get logical drives list on Windows (#1059) - Added a trigger to short
fin pull
tests in CI
- Added docs on available Docksal Stock Images https://docs.docksal.io/stack/images-versions/
- Updated docs on the
DOCKSAL_ENVIRONMENT
variable use cases (#1041) - Updated docs for web service settings and multiple webs use case
- Added a more meaningful example for additional virtual hosts with Apache
- Added Nginx docs
- Updated docs on NodeJS use case in
cli
- Updated Windows SMB Troubleshooting docs with a case when drives are not shared in Docker Desktop (#1040)
- Update
fin config
docs (#1035)
RELEASE CONTAINS BREAKING CHANGES
There was a breaking change in Docker 18.09.0.
If you are using VirtualBox mode (Boot2Docker), your VM will need to be reset during the update.
See Boot2Docker update for more information.
DEPRECATION NOTICE
- Versions of Windows prior to Windows 10 are no longer supported
- Babun (Windows) is deprecated and is no longer supported
- WSL is now the default and the only supported installation mode on Windows
- fin v1.85.1
- Added missing
stack-pantheon.yml
file to the list of stacks to download during update/install - Fixed VirtualBox 6.0 compatibility in
fin vm rm
- Note: The official latest stable and supported VirtualBox version is still 5.2.26.
- Fixed DNS detection on Windows
- Updated installation docs
- Made Docker Desktop the recommended option for Mac users (to match the info on docksal.io)
RELEASE CONTAINS BREAKING CHANGES
There was a breaking change in Docker 18.09.0.
If you are using VirtualBox mode (Boot2Docker), your VM will need to be reset during the update.
See Boot2Docker update for more information.
DEPRECATION NOTICE
- Versions of Windows prior to Windows 10 are no longer supported
- Babun (Windows) is deprecated and is no longer supported
- WSL is now the default and the only supported installation mode on Windows
- fin v1.85.0
- Docker v18.09.2
- Docker Compose v1.23.2
- Docker Machine v0.16.1
- VirtualBox v5.2.26
- System services
- docksal/dns:1.1
- Switched base image to Alpine 3.9
- docksal/ssh-agent:1.2
- Switched base image to Alpine 3.9
- docksal/vhost-proxy:1.5
- New neutral landing pages (goodbye "flask" and "grim reaper")
- Tests and automation overhaul
- docksal/dns:1.1
- Stacks
- Boilerplates
- Updated docksal/boilerplate-drupal8-composer to 8.6.10
- Updated docksal/boilerplate-drupal8 to 8.6.10
- Updated docksal/boilerplate-drupal7 to 7.63
- Updated docksal/boilerplate-drupal7-advanced to 7.63
- Addons
- Added PHPCS and PHPCBF addon
fin pull
- New set of commands to interact with hosting providers- Pantheon stack (#143)
- Windows Subsystem for Linux (WSL) support (Docker Desktop and VirtualBox modes)
- Versions of Windows prior to Windows 10 are no longer supported
- Babun (Windows) is deprecated and is no longer supported
- WSL is now the default and the only supported installation mode on Windows
- Added new services to stacks
- Angular boilerplate
- Refactored Docksal install/update mechanism
fin run-cli
switched todocksal/cli:2.6-php7.2
- Fixed a regression in upstream DNS detection
- Improved version checking for Docker, Docker Compose, Docker Machine, and Docker Desktop
- Removed deprecated
db
service instacks/services.yml
- Refactored version pinning with Docker install script
- Improved mounting of SMB and NFS shared volumes
- Fixed issue with using Drush Launcher and XDebug
- Fixed install process for Drupal 7 Advanced
- Added universal healthcheck waiting for all services during stack startup (#554)
- Added ability to use an alias in a custom command (#974)
- Added
PROJECT_URL
variable and printing it after project start (#716) - Fixed default ssh key generation when there are no SSH keys on the host
- Switched to using SMB v3.02 to mount shares on Windows
- Deprecated
fin vm start/stop
in favor offin system start/stop
- Deprecated Babun as an installation method on Windows
- Added a global debug mode in
fin
(e.g.FIN_DEBUG=1 fin <command>
) fin exec
andfin bash
now usesh
by default and only usebash
forcli
anddb
(#993, #942)- Refactored Travis tests to run concurrently
- Added fin pull (hosting integrations)
- Added Advanced Use Cases section
- Added a page about the Boot2Docker update (breaking change in Docker 18.09)
- Added instructions for using Xdebug with Visual Studio Code (#955)
- Updated installation instructions (#946, #1006)
- Improved documentation for Redis (#923)
- Improved documentation for shared volumes
- Improved documentation on extending Docksal images
- Improved documentation on switching Docker modes
- fin v1.80.1
- Docker Compose v1.23.1
- Docker Compose v1.23.0+ compatibility (#819)
- Ships with the latest versions of Docker for Mac/Windows (v2.0.0.0) and introduces a breaking change (docker/compose#6316)
- Fixed getting the list of Docksal project images to update (#839)
- Make SMB share mount more predictable (#842)
- Fixed "fin ssh-key add " compatibility with Bash 3 (#857)
- Restructured and updated stack configuration docs (#847)
- Updated SSH agent docs
- fin v1.79.4
- Docker v18.06.1-ce
- VirtualBox v5.2.20
- macOS Mojave compatibility
- You may have to run
fin update
twice to get VirtualBox automatically updated (macOS and Windows) (#836)
- System service updates
- docksal/dns:1.1
- Switched base image to Alpine 3.8. Overall refactoring.
- docksal/ssh-agent:1.2
- Switched base image to Alpine 3.8. Overall refactoring.
ssh-key
- the SSH key management script used by the newfin ssh
set of commands
- docksal/vhost-proxy:1.4
- Switched base image to
openresty/openresty:1.13.6.2-1-alpine
(Alpine 3.8) - Added
DEFAULT_CERT
support
- Switched base image to
- docksal/dns:1.1
- Stack updates
- docksal/cli:2.5-php7.1
- Set
max_input_vars
to2000
for PHP FPM - Added APCu pecl extension
SECRET_SSH_PRIVATE_KEY
should now be base64 encoded- Refactored Acquia Cloud API authentication
- and more
- Set
- docksal/cli:2.5-php7.1
fin ssh-key
- new set of commands to manage SSH keys and ssh-agent- Using SMB 2.1 to mount shares on Windows (#667)
- You no longer need to enable the legacy SMB 1.0 support on Windows 10!
DOCKSAL_VOLUMES=none
option- Not mounting the codebase from the host and using an empty volume instead. Provides best fs performance, but the code has to be managed inside the container stack.
- Automatically pass git
user.email
anduser.name
settings from the host tocli
- Exit if system services failed to start (#772)
- This prevents broken system states where one or more Docksal services failed to start without the user being informed of this being the case.
- Properly handle Blackfire secrets in
fin sysinfo
output (#783 #784) - Added
DEFAULT_CERT
support forvhost-proxy
via theDOCKSAL_VHOST_PROXY_DEFAULT_CERT
global variable - Added
SANDBOX_PERMANENT
configuration variable for sandboxes - Print vhosts without
http://
infin vhosts
- Drop
cli_home
volume whencli
service is removed/reset (#787) - Drop
db_data
volume whendb
service is removed/reset - Skip loading SSH keys that already exist in the
ssh-agent
(#773, #774) - Fixed detecting first nameserver in
/etc/resolv.conf
(#782) - DNS detection should not use localhost IP addresses as upstream DNS (#770)
- Drop project network when stopping a project (#582)
- Fixed running "fin rc" with no arguments
- Use a login bash session in
fin run-cli
andfin bash
(docksal/service-cli#92) - Fixed issue related to RC check (#815)
- Fixed
nslookup
probe on Alpine - Set
SYNC_PREFER=newer
in unison volume settings to prefer most recently updated files (#821) - Removed the ability for global addons to use
run-cli
because we cannot guarantee that$HOME/.docksal
directory is mapped inside Docker (#771) - Updated automated tests
- Migrated docs to Hugo and Netlify
- Docs structure overhaul
- Improved documentation for
fin reset
- Updated system requirements: Added CPU SSE4.2 instruction set requirements for Linux and how to check whether a CPU supports them. (docksal/service-vhost-proxy#35)
- Updated instructions around PHP/PHP-FPM settings overrides (#608)
- Added docs for
SANDBOX_PERMANENT
andVIRTUAL_HOST_CERT_NAME
- Updated "File sharing" (VirtualBox mode)
- Removed Windows 10 SMB1 mentions
- fin 1.69.1
- Fixed help for project level and global commands on Linux. Custom commands list did not display on Linux.
- Fixed broken db commands. Some DB commands did not function properly in 1.10.0.
- Fixed path to crontab in cron.md doc
- Updated multiple-projects.md regarding virtual host configuration
- fin 1.67.2
- System service updates
- Switched
vhost-proxy
to docksal/vhost-proxy:1.3.- Added support for custom certs an more
- Switched
- Stack updates
- Switched
cli
to docksal/cli:2.4-php-7.1.- Cloud9 IDE integration
- Platform.sh CLI
- Custom startup script support
- Cron jobs and more
- Switched
- Support for a wide variety of Linux distributions: Debian, Ubuntu, Mint, Fedora, Centos, Alpine (#629)
- Ability to use release candidate release for updates. To use:
fin config set --global DOCKSAL_USE_RC=1
(#719) fin platform
- run Platform.sh cli incli
fin composer
- run composer incli
fin project erase
command - removes containers and erases project files on the hostfin db truncate
- truncate a database (defaults to thedefault
)fin init
- a default placeholder command when there is no project levelinit
command definedfin config
now accepts the--env=<environment>
flag, e.g.,fin config set --env=local IDE_ENABLED=1
(#584)fin exec
now accept the--in=<service>
, e.g.,fin exec --in=db mysql -uroot -p
flag (#609)fin project create
now accepts--name
,--choice
and--yes
options and can be run unattendedfin share
- Ability to set ngrok options via
fin share
arguments (#601) - Ability to use ngrok configuration file for
fin share
(#611)
- Ability to set ngrok options via
exec_target = run-cli
can be used in custom commands and addons to run them in a standalone run-cli session (#715)- Drupal 8 Composer boilerplate project (#174)
- Switched to simplified, non-persistent network configuration on Linux
- Supporting various Linux flavors (Debian, Ubuntu, Mint, Fedora, Centos) is much simpler now
- Fixed DNS connectivity when external DNS (Google DNS) is not accessible
- Removed
vm
command when running on Linux - Removed
uuidgen
as a dependency (#630) fin run-cli
now uses SSH keys from thessh-agent
service- Fixed custom command output ordering in
fin help
- Fixed
fin share
when no parameters are provided - Added description for
docker
anddocker-compose
infin help
- Fixed
fin
not correctly waited for unison duringfin up
- Auto-detect upstream DNS when possible (#663)
- Added custom cert support when starting
vhost-proxy
service - Fixed an issue when
fin config get/set/rm
did not work with an alias (#670) - Fixed network setup on Docker for Mac/Win
- Fixed
fin vhosts
spitting out nginx config lines - Added a named
db_data
volume for MySQL/PostreSQL, so its easier to identify them in thedocker volume ls
list - Added a named
cli_home
volume for/home/docker
incli
, so its easier to identify them in thedocker volume ls
list - Prefixed Blackfire secrets with
SECRET_
to hide the keys infin config
output - Switched to using bash login sessions for cli (
bash -l
)bash -l
sources~/.profile
inside cli (for both interactive and non-interactive sessions)
- Using custom
docksal/bats
with an interactive tests mode support for automated tests (#705) - Applying
overrides-osxfs.yml
only for bind volumes (#709) - Fixed a bug that unison volumes were not deleting host files, which were deleted inside
cli
- Improved
parse_params
to be more robust when invalid parameters are fed in (#735) - Fixed
DOCKER_HOST
on WSL - Increased verbosity of
fin sysinfo
fin diagnose
now includes information fromfin sysinfo
and should be used to provide diagnostic information when submitting issues on Github (#627)- Fixed VirtualBox does not install on Windows if username has spaces (#636)
- Fixed Windows
CRLF
line endings detection (#639) - Removed
git
as a dependency infin project create
(#635) - Fixed
fin run-cli
run in/root
on PWD (#661) - Fixed
fin exec
behaving differently and failing when passing an existing script as an argument (#720) - Updated
fin phpcs
sample command to includeDrupalPractice
standard (#724) - Escaped spaces for params passed to
fin run-cli
to make it behave the same way asfin exec
(#738) - Fixed project categorization for Hugo in
fin project create
- Updated and improved automated tests across different projects (cli, web, fin, etc.)
- New: Setting up Cron jobs in cli (#671)
- New: Using Platform.sh CLI tool
- New: Enabling and using Cloud9 integration (#690)
- Updated: installation docs (#658)
- Updated: README.md in docksal/docksal, removed outdated information
- Updated: Windows troubleshooting: VirtualBox installation fails on Windows (Hyper-V Enabled) (#641)
- Updated: Extending stock Docksal images (#655)
- Updated: Xdebug docs (#734)
- Updated: Switching PHP versions (#744)
- Fixed an error with setting DB privileges during
fin db create
- Disabled network cleanup in
fin cleanup
(triggered during updates) (#582)- Check this fix if you updated to Docksal 1.9.0 and had your stopped project(s) broken
- Updated 1.9.0 release notes to mention a breaking change in docker-compose 1.21.1
- Fixed typos here and there
- fin 1.60.0
- Stack updates
- Switched
cli
to docksal/cli:2.2-php-7.1.
- Switched
- Docker 18.03.1
- Docker Compose 1.21.1
- [BREAKING] Projects with dashes in names need
fin reset
(Read more)
- [BREAKING] Projects with dashes in names need
- VirtualBox 5.2.2
- Alpine Linux support.
- Play-with-Docker support
- You can now try and play with Docksal online, free of charge, and within minutes!
- Experimental: Cloud9 IDE integration
- Cloud9 provides an in-browser IDE and terminal for your project and stack.
- Run
fin config set IDE_ENABLED=1 && fin project reset cli
in your project folder to enable Cloud9 IDE. - Open
http://ide.<VIRTUAL_HOST>
fin config [get|set|remove]
- New commands to manage project level (
.docksal/docksal.env
) and global ($HOME/docksal/docksal.env
) Docksal variables. - See
fin help config
for details.
- New commands to manage project level (
- New boilerplate frameworks:
- Improved
fin share
to allow for custom ngrok configuration (see Additional ngrok configuration). - Extended
fin config generate
to allow forDOCKSAL_STACK
andDOCROOT
to be set at runtime.- See
fin help config
for details.
- See
fin run-cli
:- Switched default image for
fin run-cli
to usedocksal/cli:2.2-php7.1
. - Allow passing environment variables to the
run-cli
container at run time or through$HOME/.docksal/docksal.env
file. - Fixed Windows support.
- Standard secrets (
SECRET_*
variables) are now passed to therun-cli
container. - Substantially improved startup container time by declaring
/home/docker
as a volume (same as in the default stack). - See
fin help run-cli
for more details - [BREAKING] Persistent
$HOME
directory in therun-cli
container by default. - [BREAKING] Image and debug are now options (
--image=...
,--debug
)
- Switched default image for
- Reworked
fin project create
command screen to separate out different frameworks and languages. - Refactored
fin ssh-add
command to allow for non-standard ssh keys to be add automatically (see Automatically add keys). - Refactored OS detection.
- Fixed
fin help
to reference commands within folders. - Refactored container remove function.
- Refactored unison volumes integration.
- Forked our own
docksal/unison
image. - [BREAKING] renamed
bg-sync
tounison
infin
and instacks/volumes-unison.yml
.
- Forked our own
- Fixed
fin stop --all
to stop all Docksal projects not all existing Docker containers. - Fixed Travis CI to run correctly with external pull requests.
- Improved testing across functionality.
- Fixed issue with
fin db create
failing if database exists andfin db drop
failing if database did not exist. - Fixed missing host file on WSL.
- Added
blackfire
service configuration toservices.yml
and updated Blackfire documentation. - Refactored network configuration on Ubuntu
- During
fin system stop
network settings introduced by Docksal will now be reverted.
- During
- Fixed (workaround) a Docker bug with long commands overlapping on single terminal line (
fin exec
andfin run-cli
). - Add a warning when running
fin
as root.
- New: Addons - extending projects with extra commands and integrations.
- New: phpMyAdmin integration docs.
- New: Redis integration docs.
- New: fin help - content from all
fin help
topics. - New: fin run-cli command docs.
- Updated Using native Docker applications docs to use the new
fin config set
command. - Updated SSH agent with a section on how to automatically local non-default keys.
- Updated Custom commands with a section on grouping custom commands.
- Updated Setup instructions with new boilerplate repos.
- Updated Blackfire integration instructions.
- Updated ngrok (
fin share
) integration instructions with the new configuration options. - Updated Xdebug docs with instructions on using Xdebug with the Atom editor.
- Updated Extending stock images
- Updated Stack configuration docs with all available variables in Docksal.
- Updated Troubleshooting with instructions on "Docker unauthorized" issues.
- Fixed typos and grammar found within documentation.
- fin 1.52.0
- Stack updates
- Switched
cli
to docksal/cli:2.1-php7.1 - Switched
db
to docksal/db:1.2-mysql-5.6
- Switched
- Secrets - a way to pass keys/tokens to
cli
- Currently supported:
SECRET_SSH_PRIVATE_KEY
,SECRET_ACAPI_EMAIL
,SECRET_ACAPI_KEY
,SECRET_TERMINUS_TOKEN
- All secrets should be prefixed with
SECRET_
- Secrets are masked in
fin config
output to protect sensitive data - Secrets can be set in the global
docksal.env
file ($HOME/.docksal.env
) or the project one(s) - Requires
docksal/cli
v2.1.0+
- Currently supported:
- Terminus integration (#485)
- Shortcut command for Terminus -
fin terminus
- Requires
docksal/cli
v2.1.0+
- Shortcut command for Terminus -
- Added PostgreSQL service definition in
services.yml
(#193)
- Added support to run
fin debug
with project configuration loadingfin debug -c ...
,fin debug --load-configuration ...
- Removed an old workaround in
fin drush
andfin drupal
when run with empty arguments- drush used to choke on empty arguments (e.g., drush "")
- drupal console never needed this workaround
- Allow
fin alias
creation command to also update aliases- Added the "-f" option when creating an new alias link. This allow one to use the same command to update aliases vs. the current workflow of first removing the alias then adding it back in with the new path. (#496)
- Updated
fin run-cli
(fin rc
) to usedocksal/cli:2.1-php7.1
(#483) - Stacks: renamed
db
tomysql
inservices.yml
- Keeping the old
db
service definition for backward compatibility
- Keeping the old
- Updated Drush docs
- Drush Launcher
- Site aliases with Drush 9
- New docs for Acquia Drush Commands and Terminus
- Changed macOS installation instructions to account for VirtualBox installation issues on macOS High Sierra
- fin 1.50.3
- Docker Compose 1.19.0
- Docker Machine 1.14.0
- System services
vhost-proxy
upgraded to v1.2.0- Increased proxy buffers to
256k
- fixes 500 errors for some Drupal 8 sites sending huge HTTP headers - routing to a non-standard port
- HTTP/2 support
- Increased proxy buffers to
- Stacks
- PHP stacks now use
docksal/cli:2.0-php7.1
(PHP 7.1) by default- v2 cli images, built from official Docker PHP-FPM images
- Acquia stack now uses
1.1-varnish5
(Varnish 5) image
- PHP stacks now use
fin system
subset of commands (#387)fin system stop
- removes Docksal system services and stops all Docksal projects (fin stop --all
)
- New
default-nodb
stack - when you don't need MySQL (#427) - New
node
stack and sample project - New project wizards (Grav CMS, Gatsby JS, Laravel, Hugo)
fin cleanup
refactoring- Use Docker's
prune
commands where it makes sense
- Use Docker's
- Revised short aliases for miscellaneous commands
- Only leaving aliases that feel common and would make sense for most people right away
fin db create
now usesutf8mb4
/utf8mb4_unicode_ci
charset/collation by default (#437)- Disallowing underscores or uppercase letters in project name (#438)
fin config generate
now usesDOCKSAL_STACK=default
(instead of a full blownstack-default-static.yml
definition) (#433)- Removed static stacks (
stack-acquia-static.yml
andstack-default-static.yml
) - Fix warning with
fin stop -a
when no projects are running (#450) - Fix the bug that
fin
was not able to use Unison volumes with Docker for Mac - Allow using paths relative to the project root in
docksal.yml
(#459)- Use
docksal.yml
path to detect docker-compose context directory docksal.yml
now becomes required, so we create it automatically if it does not existdocksal.env
is also created automatically (if not present) to have both configs around for users to use
- Use
- Fixed error when
DOCKER_RUNNING
was not always exported - Always use
winpty
on windows (since the experimental Docksal bash shell is deprecated) (#457) - Removed old
FIN_SET_UID
variables - Added support for vhost-proxy v1.2 logging options via global
docksal.env
- Mounting
project_root
invarnish
andsolr
services to give access to the project codebase and load custom configuration overrides (see respective docs for details) - Updated
solr
service- Using the new
io.docksal.virtual-port
label supported introduced indocksal/vhost-proxy:1.2
- Solr can now be accessed via vhost-proxy at
http://sorl.<VIRTUAL_HOST>/solr
- Using the new
- Updated
mailhog
service- Using the new
io.docksal.virtual-port
label supported introduced indocksal/vhost-proxy:1.2
- MailHog web UI can now be accessed via vhost-proxy at
http://mail.<VIRTUAL_HOST>
- Removed binding to port
80
and thus theuser: root
override (necessary to bind to privileged ports). This is no longer necessary with vhost-proxy v1.2+ supporting custom port routing.
- Using the new
- When
CI=true
is set in in$HOME/.docksal/docksal.env
, vhost-proxy will be open to the world (bind to0.0.0.0
). This should be used in CI/Sandbox environments. - Fixed fin aliases not working on Linux
- Passing
VIRTUAL_HOST
variable tocli
by default, so that it can be used in scripts that run insidecli
DOCKER_HOST
can now be overridden via$HOME/.docksal/docksal.env
(#452)- Added ability to override the default host value for
fin share
(fin share --host=example.com
) (#363) - Removed old tests and updated existing ones
- Document installation issues on a fresh macOS High Sierra (#417)
- Update PHP settings overrides (changed in cli v2.0 images)
- Updated fin docs
fin system
subset of commands
- Updated Varnish, Solr, MailHog, Memcached docs
- Removed advanced usage (custom stack) examples for
memcached
andvarnish
to keep instructions simpler. Using theextends
approach in yml should be the mainstream.
- Removed advanced usage (custom stack) examples for
- Updated ngrok docs
IMPORTANT NOTE: if you use VirtualBox you may have to run fin update
twice for this release.
This release addresses a critical issue in 1.6.0, which breaks new Docksal installations on Mac/Windows using VirtualBox mode. We are also introducing support for WSL on Windows (in beta).
- fin v1.43.2
- Windows: WSL (Windows Subsystem for Linux) support (beta) (#188, #407, #421)
- Docker for Mac, Unison volumes:
fin logs unison
- show Unison log
-
Check for
docker-machine
binary existence during vm stop on update (#422) -
Fixed xdebug configuration regression (#420)
-
Docker for Mac, Unison volumes: Added ability to wait for the initial sync to complete.
-
Added ability to lock Docksal updates
Set
DOCKSAL_LOCK_UPDATES
to anything in$HOME/.docksal/docksal.env
to lock updates. Useful on CI/sandbox servers.
- Updated: xdebug docs
- Updated: Docker for Mac Unison volumes
IMPORTANT NOTE: if you use VirtualBox you may have to run fin update
twice for this release.
- fin v1.41.0
- docker/boot2docker v17.09.0-ce
- docker-compose v1.16.1
- docker-machine v0.13.0
- VirtualBox v5.1.28 (the latest boot2docker is using VirtualBox Guest Additions v5.1.28, so we stick with a matching version here as well)
-
fin project
command subset replaces the oldfin start/stop/restart/rm
commands.The old commands are still supported to preserve compatibility.
-
Docker for Mac: osxfs caching is automatically enabled to improve read performance. (#249, #397)
-
Docker for Mac: Unison file sync support
-
You can add environment dependent ENV and YML files based on
$DOCKSAL_ENVIRONMENT
variable, e.g.,docksal-myenv.yml
, that would only apply, ifDOCKSAL_ENVIRONMENT=myenv
(#383, #354). Official documentation is pending. -
New sample project repos and wizards: Grav, Gatsby JS and Laravel
-
New
vhosts
command to show all registered Docksal virtual hosts
- Docker for Mac/Win: networking setup is now aligned with the VirtualBox mode and Linux:
192.168.64.1 - host IP
192.168.64.100 - Docksal IP
-
Docker for Mac: Add ssh keys on up/restart/reset (#396)
-
Docker for Mac/Win: Fixed xdebug settings. (#389, #393)
-
Ubuntu 17.10: Install
ifupdown
andresolvconf
if they are missing (#321) -
Ubuntu 17.10: Address slow fs performance with the
overlay2
storage driver (defaut in Docker for Mac/Win and Ubuntu 17.04+) by adding/home/docker
volume incli
(#325) -
Addressed the DNS issue of corporate networks and VPN
Added backup upstream DNS server for docksal-dns. This addresses cases when
DOCKSAL_DNS_UPSTREAM
is set to an internal IP (VPN/LAN) and becomes inaccessible when user disconnects from that network.8.8.4.4
will now be used as a backup when DOCKSAL_DNS_UPSTREAM is not reachable. -
Exposed ngrok Web UI on a random port to make it accessible from the host (#379)
-
Project images are now auto-updated during overall update
-
Show virtual host name after project start
-
Allow installing Docksal addons from a non-default GitHub repo
-
Allow any
exec_target
for addons and custom commands (#356).Requires that container specified as
exec_target
hasproject_root
volume defined, just like cli:volumes: ## Project root volume - project_root:/var/www:rw,nocopy
-
Fixed version comparison bug
-
Fixed MySQL permissions and default db missing bugs in
fin db create
(#351, #371, #372) -
Fixed the bug that Virtualbox update breaks docker-machine upgrade and users need to run
fin update
twice. (#280) -
Fin will check that Docksal system services (
dns
,vhost-proxy
,ssh-agent
) are running and restart them otherwise -
Use
DOCKSAL_DNS_DOMAIN
variable value for defaultVIRTUAL_HOST
(#390) -
Fix that system images were not updated during install in Docker for Mac/Win mode
-
Ensure
~/.ssh
exists. This prevents errors for users with no ssh keys -
Increase CLI healthcheck wait timeout to 60 seconds for intensive operations during custom healthchecks
- New: Unison volumes
- Updated: SMB troubleshooting - SMBv1 issues on Windows 10 Fall Creators Update 1709
- Updated: Docker for Mac/Windows file sharing
- Updated: Getting a list of Docksal images on Docker Hub
- Updated: Switch to using https://get.docksal.io for installs
- Updated: Portable installation instructions
- Added support for Docker for Mac/Windows
- Organized instructions per OS
- Updated: Improved custom commands documentation
This is a hotfix release aimed to address sporadic issues with TLS certificates caused by a regression between docker-machine 0.12.0 and docker engine 17.06.0.
- docker-machine v0.12.2
- fin v1.26.0
- Stack images updates
--no-truncate
option forfin db import
fin db cli
now accepts query as an argument and--db
parameter to specify the database to run query againstfin db create
andfin db drop
commandsfin diagnose
command
- Basic automated test in example repos
- Removed old icon scripts on for Windows
- Made
DOCROOT
variable accessing incli
- New: Troubleshooting SMB shares creation, mounting and related issues on Windows
- New: Web server: Configuration overrides
- Updated:
fin db
docs regarding--no-truncate
- Updated: added recommendations for running custom commands in
cli
For custom configurations (using docksal.yml
), if you are getting:
ERROR: Named volume "host_home:/.home:ro" is used in service "cli" but no declaration was found in the volumes section.
Remove host_home:/.home:ro
from docksal.yml
and do a fin project start
.
- docker v17.06.0-ce
- docker-compose v1.14.0
- docker-machine v0.12.0
- VirtualBox v5.1.22
- winpty-0.4.3-cygwin-2.8.0-ia32
- fin v1.22.0
- System and stack images updates
vhost-proxy
: docksal/vhost-proxy:1.1web
: docksal/web:2.0-apache2.2 and docksal/web:2.0-apache2.4db
: docksal/db:1.1cli
: docksal/cli:1.3-php5 and docksal/cli:1.3-php7
- Implemented a Docker healthcheck for cli
- Requires docksal/cli v1.3.0+. Falls back to waiting for 10s for the container to become ready for older versions.
- Addons (experimental)
- Ability to install and remove addons (custom commands) per project or globally from statically defined repo docksal/addons
- Prevent NFS conflicts on macOS. (#133)
DOCKSAL_NFS_PATH
can be used to override Docksal projects folder which effectively serves as NFS mount point.
- Added support for simple static site creation in
fin project create
(#177) - Added custom commands to bash autocomplete (#232)
fin sql-import --progress
--progress
displays import progress usingpv
(if installed on the host)
fin build
- support fordocker-compose build
workflow- Support for executing custom commands in
cli
instead of host- Add
#: exec_target = cli
in the header of the custom command to tell fin to execute the command withincli
viafin exec
- Add
- The VM on Mac and Windows will now use 2GB of RAM by default
- Anyone who's low on RAM (< 8GB) can use
fin vm ram 1024
to limit the VM memory to 1GB
- Anyone who's low on RAM (< 8GB) can use
- Use
nocopy
mode forproject_root
volume- This tells Docker to not merge the content of the volume with the destination directory in the container (if one is not empty)
- SSH Agent usage refactoring
- Removed dependency on the host's
$HOME
directory mount.
- Removed dependency on the host's
host_home
volume is deprecated and removed from stack files- This is a breaking change!
- See instructions above on the necessary adjustments to
docksal.yml
.
- Ability to stop at restart certain service container, e.g.,
fin restart db
- Fix mysql import for large database (#279)
- Database truncation was rewritten. Now database will be dropped and re-created. Should work faster and more reliable.
- Mysql import and dump functions will properly read
MYSQL_DATABASE
environment variable (#276) - Temporary workaround for NFS issues on Mac (#265)
- Fixed the install/update process handling when Docker is already installed (#298)
- Other fixes and improvements
- New: Extending stock images
- New: Folder aliases
- New: File sharing
- Updated: Docker for Mac, Solr, Memcached, Behat and Blackfire docs
- Updated: Troubleshooting with mysql memory edge case
- fin 1.10.0
- Fix retrospective bug that was making
DOCKSAL_DNS2
value empty - Fix permissions issues on Windows that were related to improper
uid
/gid
- Fix edge case with software versions comparison, that prevented software installations in some cases (#224)
- Refactored automatic DNS resolver configuration
- Doing a DNS probe to make sure the upstream DNS server is reachable
- Using
8.8.8.8
a the default upstream DNS on all platforms DOCKSAL_DNS_UPSTREAM
can be used to override the default upstream DNS server- Automatic DNS resolver can now be disabled via
DOCKSAL_NO_DNS_RESOLVER=true
- Set interface metric on Windows. This makes sure our VBox adapters is the first in the list and thus it's DNS server settings will be used by Windows
- Adding configure_resolver "off" mode. This will revert resolver settings when the VM is stopped, killed, removed
- Added a flag to control query logging in
docksal-dns
- Updated docs regarding the DNS resolver
*.docksal
domain resolver now works on Windows removing the need to edit thehosts
file!fin db <command>
replaces all previously existing mysql related commands (sqli
is nowdb import
etc.). Seefin db help
for details. Old commands still work for compatibility.fin vm hdd
- show VM hdd capacity and usage.fin vm stats
will only show CPU and network stats nowfin hosts
- easily add or remove a host to/from OS-dependenthosts
file (Relates to #113)- Override VirtualBox HDD size during VM creation. Set
VBOX_HDD
environment variable to the desired size in megabytes. Default is50000
. (see https://github.com/docksal/docksal/commit/d50e00367514f64ad0ae4421f6d08cc614d39e2e for details)
- Windows SMB share creation and mount refactoring
- Prefix Docksal SMB shares with
docksal-
to avoid conflicts with existing shares. Docksal share names on Windows will now look like\\computer\docksal-c
instead of\\computer\c
before. Should address file permissions issues some Windows users had had. - Domain name is now properly passed during shares mount. Should address share mount issues for domain users.
- Mount SMB shares with
ntlmssp
orntlm
security options. Perform two attempts: usentlmssp
by default, usentlm
as a fallback. Should address issues for many users of corporate Windows laptops (#117) - Perform umount before mount in
smb_share_mount
to simplify debugging (e.g.,fin vm mount
to remount the share) - Allow overriding CIFS
sec
option by settingSEC_SMB
environment variable. Useful for debugging or for edge cases when neither of existing options work.SMB_SEC=ntlmv2 fin vm mount
. Also see unix.stackexchange.com/questions/124342
- Prefix Docksal SMB shares with
- Improve messaging to show when database dump is being imported from stdin
- Fix automatic VirtualBox installation on Windows
- Docksal console desktop icon is deprecated. With the winpty improvements there is no need in this experimental console approach anymore.
- Import SSH keys during containers reset on Linux (#180)
vhost-proxy
anddns
are now binding to192.168.64.100
on all platforms. This should help to avoid conflicts with local web server instances (assuming they also don't bind to0.0.0.0
, but use a specific IP instead (e.g., Apache on Linux can now run on127.0.0.1
in parallel with Docksal)
- How to increase Docksal VirtualBox VM disk size
- Drush site aliases documentation improvements
- New edge case in Troubleshooting:
FastCGI: incomplete headers
- Updated "Working with multiple projects/domains"
- Added "Stats and analytics" section
- New one-line installer:
curl -fsSL get.docksal.io | sh
- Docksal usage stats. Minimal OS/version and fin version tracking via Google Analytics.
fin debug
- a new hidden command for debugging purposesfin exec
can now take a file as an argument and will execute it inside cli (e.g.,fin exec script.sh
)fin vm mount
- a new hidden command to attempt re-mounting of shares on Mac and Windows.fin project create
- replacesfin create-site
fin run-cli
- run a standalone, one-off cli container in the current directory. This allows using any tool inside cli without an already created/running Docksal project/stack.fin image
command to manage images (save, load, view Docksal images on Docker Hub).- Adds support for saving and loading Docksal system and project images (e.g., from a local drive).
- Portable installation mode support (e.g., from a USB drive or a local folder)
- Useful for conferences/trainings/etc. where internet bandwidth is an issue
fin update
- supports VirtualBox, boot2docker.iso and tools (Mac and Windows)fin vm start
- load system images from a localdocksal-system-images.tar
file
- Magento support and sample project repos
- Version updates:
- VirtualBox 5.1.18
- Docker 17.04.0
- Docker Compose 1.12.0
- winpty-0.4.2-cygwin-2.6.1
- Default project stack version changes
cli
: docksal/cli:1.2-php5 and docksal/cli:1.2-php7
- Soften Docker version requirements - allowing higher Docker versions, since Docker added backward API compatibility.
fin cleanup
is now executed onfin update
to address weird cases when Docker is using outdated image versions. #155- Added DNS settings for all services. Addresses the issue with containers not being able to resolve
.docksal
domains. - Added support to disable pseudo-tty allocation with
fin exec -T
. Useful for non-interactive commands when output is saved into a variable for further comparison. - Removed
--privileged --userns=host
from system services - Refactored Docker environment variable export during startup. Startup time decreased by approx. 0.5s.
- Improvements to handle edge cases when mounting NFS shares on Mac.
- Windows
- Support for pipes (
|
), stream redirects (< >
) and variable substitution from a sub-shell ($()
) viawinpty -Xallow-non-tty
- Fixed directory switch in
fin exec
- Support for pipes (
- Allowing non-tty installation on Mac and Linux (e.g., when used in CI/scripts)
- Miscellaneous other small fixes and improvements
- MySQL DB access for external tools
- Overriding the default domain name and Using arbitrary custom domains
- Web server logs, HTTP Basic Authentication
- Docksal setup instructions
- fin cli
- Troubleshooting
- Installing Docksal from a USB drive ("portable" mode)
- Added Github issue and pull request templates
- Global docksal.env
- Ability to skip VBox version check via
SKIP_VBOX_VERSION_CHECK=1
(add to~/.docksal/docksal.env
) - Wildcard virtual host support is on by default (i.e. )
- Added checks for the uniqueness of the project name and virtual host
- Added Magento sample project repo to
fin create-site
- Update software requirements
- Docker 1.13.1, Docker Compose 1.11.1, Docker Machine 0.9.0, VirtualBox 5.1.14
- System services version changes
docksal-vhost-proxy
: docksal/vhost-proxy:1.0
- Default project stack version changes
cli
: docksal/cli:1.1-php5 and docksal/cli:1.1-php7
- Removed
VIRTUAL_HOST
env variable from stack files and docs. Starting withdocksal/vhost-proxy:1.0
theio.docksal.virtual-host
label is used instead. TheVIRTUAL_HOST
env variable can still be used (for compatibility reasons). - Showing error for an unknown vm subcommand
- Fixes for updating on Ubuntu
- Added PROJECT_ROOT_WIN variable for certain use cases on windows
- Increased default VM disk size to 50GB
- Increased delay after nfsd restart on macOS
- Fixed the configuration statements order in
volumes-unison.yml
- Fixed documentation search on ReadTheDocs
- Restructured docs
- Updated Xdebug documentation for drush debugging
- Added instructions on using Xdebug with NetBeans
- Added Drupal Console and Drush setup instructions
First release.
IMPORTANT: Anyone switching from Drude please follow the update steps precisely to avoid conflicts and issues.
First release.
IMPORTANT: Anyone switching from Drude please follow the update steps precisely to avoid conflicts and issues.
First release.
IMPORTANT: Anyone switching from Drude please follow the update steps precisely to avoid conflicts and issues.