Releases: caprover/caprover
v1.1.0
v1.0.0
Major Update. Renamed from CaptainDuckDuck to CapRover
Script for upgrading from CaptainDuckDuck to CapRover will be ready in a few weeks, here.
Breaking Changes:
- schemaVersion in captain-definition file is now upgraded to 2
- The extra ./src prefix is no longer needed for captain-definition dockerfiles. You need to remove ./src from the first argument in your COPY and ADD statements in your dockerfileLines
Features:
- One Click Rollback
- Improved build logs on webview.
- Improved downtime between deploys
- Allowing Dockerfile to be referenced in captain-definition (#113)
- Ability to reference imageName inside captain-definition directly when you want o deploy an already built image from DockerHub.
- Easy to copy and paste environmental variables UI: (#256)
- Added a separate one-click repository which can be updated continuously - built based on docker compose (https://github.com/caprover/one-click-apps)
- Ability to simply copy and paste a Dockerfile and captain-definition files on web dashboard.
- Improved cluster support by adding ability to turn on/off the registry, have multiple private registries, change default registry.
- Web dashboard UI improvements.
Dev work:
- Backend rewrite in TypeScript.
- Frontend rewrite in TypeScript via React ant.design
- CLI rewrite in TypeScript
- Updated Certbot (Let's Encrypt)
V0.7.3
V0.7.2
Starting V0.7.0, nginx was no longer using the Docker routing mesh, this was done to support showing real IPs behind requests. However, this caused issues on servers that have their ports blocked by firewall, see #237
Although it's not a bug in CaptainDuckDuck, it might cause confusion for new users, hence, a precheck for firewall test is added to the installation phase. If a firewall on important ports is detected, the user will be warned with a proper message and an instruction on how to disable firewall.
V0.7.1
Added:
- Ability to override default values. This includes overriding default Captain dashboard subdomain and etc.
- Allowing precheck for wildcard domain to be skipped if the provider doesn't support wildcard
- One-click apps can now be deployed with specific tags (versions)
- The user can now optionally change the instance count of persistent apps.
- Unused images clean up added to settings
Improved:
- Back button works as expected in apps settings page
- Sticky footer for Save and Delete buttons on the app page
- Move Docker registry settings to Nodes page from the main dashboard page
- Revealing real IP by using
mode=host
for nginx
V0.6.0
Added:
- Build logs are now available on web dashboard, you can view build logs initiated with Github webhooks as well.
- Added Redis as a one-click app
- Added prechecks on OS and Docker version when installing CaptainDuckDuck to ensure maximum compatibility
Fixed:
- NetData container removal is retrofitted to avoid some Docker deadlocks
- Flashing issue for logged out state on Dashboard
- Login issue on small phone screen
- Fixed issue with very long domain names
Improved:
- Default client max size for Captain is changed to 500mb
- Message for self-hosted registry is changed to be more clear so user won't be surprised with an expected error
- More details on error messages related to custom domains
v0.5.3
Fixed:
- Third-party private registries limited via username scope were not correctly getting authenticated (81fe040)
Improved:
- Push error are now throwing proper error rather than confusing 500 error
- If something fails when app is getting created, the premature entry is now automatically deleted from the app database
V0.5.1
BREAKING CHANGES::
- Make sure that your CLI version is at least
1.0.11
-- To check your current version:captainduckduck -V
-- To update:sudo npm install -g captainduckduck
- Breaking change in your
captain-definition
files:
-- if you havepython
as your template, you should change it topython-django
- Setting a max on log size files does not apply to existing containers. To use the same log size cap for current services, run:
docker service update --log-driver json-file --log-opt max-size=512m captain-nginx
docker service update --log-driver json-file --log-opt max-size=512m captain-captain
docker service update --log-driver json-file --log-opt max-size=512m captain-certbot
docker service update --log-driver json-file --log-opt max-size=512m captain-registry
docker service update --log-driver json-file --log-opt max-size=512m captain-app1 # replace app 1 and app 2 with your app names
docker service update --log-driver json-file --log-opt max-size=512m captain-app2 # replace app 1 and app 2 with your app names
Features added:
- Ruby/Rack support added (see #45)
- Support for showing build logs when deploying via command line added (b64c317). Simply running
captainduckduck deploy
now shows the build logs. - Added CouchDB as one-click app
Improved:
- Added UDP protocol to Port Forwarding (previously it was only TCP)
- Container log files are now maxed at 512MB per container by default in order to avoid high unnecessary disk usage. It can be changed by updating service manually, e.g.,
docker service update srv-captain--app-name --log-driver json-file --log-opt max-size=2048m
- Captain now runs a
docker container prune
to clean up stopped containers - NetData startup script improved and auto restart is now enabled by default
- Wrong app name during deploy now returns a more specific message to hint the user instead of plain 500
v0.4.0
New:
- Added ability to Enorce HTTPS for apps! (#2)
- Advanced users are now able to customize their nginx configurations (allowing http2, process counts, cache config, custom redirects and etc). #44
- Added a custom
nginx-shared
directory for using custom files in nginx container (#71). Using this combined with customized nginx config, you can use custom SSL certificates, custom static assets and etc. - Persistent directories (volumes) can now be specified as path on host machine.
Improved:
- Health-check calls are now more reliable with the newly added timeout.
Fixed:
- Force HTTPS button on web dashboard now gets disabled if Force HTTPS is activated. (efc4384)
CLI (1.0.9):
- Added a
--default
flag tocaptainduckduck deploy
to avoid re-entering server address and other information.
v0.3.1
Fixed:
- In cluster mode, the initial instance was always getting created on main node due to wrong image tag (c6e9e4b)
- GitLab support added for automated deployment
Improved:
- Deploy now reports all kinds of errors. No more ambiguous status 500 error.
- Changed healthcheck interval to 20sec from 5sec to make the logs less verbose
CLI improvements (1.0.8)
- Fixed logout causing all other instances to get logged out
- Improved deploy process by pre-checking
captain-definition
file. - Improved saving app name if it's getting re-deployed.