Commit Graph

143 Commits

Author SHA1 Message Date
Adam Warner a070b944c4 Remove tini from image, we don't need it as we're handling all the exits etc in start.sh
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-10-11 18:14:46 +01:00
Adam Warner add6973a28 Monitor the capsh pid, not FTL pid. If stop is called without an exit code being passed to it, then FTL is still running - so we stop FTL and then get the exit code from the capsh PID by immediately waiting it after killing FTL
Check for merge conflicts / main (push) Has been cancelled
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-10-09 21:56:57 +01:00
Adam Warner f9b6999da1 Update src/start.sh
Check for merge conflicts / main (push) Waiting to run
Co-authored-by: RD WebDesign <github@rdwebdesign.com.br>
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2024-10-07 23:10:23 +01:00
Adam Warner 9e37aa8f59 Clean up the code - at the end of the start() function, wait for the start_ftl process and pass it's exit code to stop.
Add in additional while/wait to ensure that after the FTL log exists, it contains the "FTL Started" line

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-10-07 21:54:55 +01:00
Adam Warner 210a1172ff Always terminate the container if pihole-FTL binary exits. Either naturally or via an error. Don't attempt to restart it, allow the container's restart policy to do this.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-10-06 22:49:19 +01:00
Adam Warner e938d1a39b Actually do something with the result of readelf in case of invalid FTL binary
Remove the `cat` of the pihole-FTL binary as it could lead to a very difficult to read logs
Add some more helpful output to the build script

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-09-11 19:09:35 +01:00
Adam Warner df97235946 Migrate the dnsmasq.d configs that are owned by Pi-hole into /etc/pihole/migration_backup_v6, where FTL expects to find them
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-09-05 19:30:01 +01:00
Adam Warner 32c57752cf dev branch becomes development
Default the component branches in Dockerfile to be `development` (might change to master after full v6 release)

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-09-02 21:46:22 +01:00
Adam Warner 5a9e67025b * Clean up some of the output for the container startup
* Only start tailing pihole-FTL log from most recent pihole-FTL start
* If v5 config files are detected, but no v6 files are, then we must defer some of the configuration until after FTL has migrated the files
* move some of the logic from start into bash_functions to make it easier to follow the start

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-08-25 22:29:20 +01:00
Adam Warner 353094cf43 correct directory for local FTL binary
Build and Publish (development-v6) / build (3.19, linux/386) (push) Has been cancelled
Build and Publish (development-v6) / build (3.19, linux/amd64) (push) Has been cancelled
Build and Publish (development-v6) / build (3.19, linux/arm/v6) (push) Has been cancelled
Build and Publish (development-v6) / build (3.19, linux/arm/v7) (push) Has been cancelled
Build and Publish (development-v6) / build (3.19, linux/arm64) (push) Has been cancelled
Build and Publish (development-v6) / build (edge, linux/riscv64) (push) Has been cancelled
Check for merge conflicts / main (push) Has been cancelled
Build and Publish (development-v6) / merge-and-deploy (push) Has been cancelled
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-08-14 17:57:05 +01:00
Adam Warner 1c6c1b3075 bump alpine to 3.20
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-08-06 16:18:10 +01:00
Adam Warner 2922fbdc42 Update src/bash_functions.sh
Co-authored-by: yubiuser <ckoenig@posteo.de>
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2024-07-02 20:02:15 +01:00
Adam Warner a7565e2b23 Default upstream DNS to Google and remove the mention of the environment variable from the quickstart compose file.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-06-30 21:22:56 +01:00
Adam Warner f9dd3dfa1d Add PADD branch switch to build script. Fix casing of as->AS in Dockerfile to silence a warning about casing
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-06-22 12:21:28 +01:00
DL6ER 63f36bfdd5 Add CAP_SYS_TIME in the container if available
Signed-off-by: DL6ER <dl6er@dl6er.de>
2024-06-08 11:04:52 +02:00
Adam Warner 4c8066a9e0 Change default value of PIHOLE_DOCKER_TAG in dockerfile
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-05-27 22:42:15 +01:00
Adam Warner a49600e63d Install grep to avoid issues in pihole -w/b with the default busybox grep
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-05-08 22:27:40 +01:00
shamoon 1b6469ba74 Fix: correct dns upstreams variable name
Signed-off-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-03-28 11:40:01 -07:00
Adam Warner 292a6b961c Update Dockerfile to use a nifty buildkit feature allowing us to either pull FTL from the web, or use a locally built copy.
Add a build script for ease of local building (separate from the build-and-test script).
Update Readme with build instructions

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-03-16 01:56:35 +00:00
Adam Warner 24006c7a00 Address comments.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-03-11 18:14:26 +00:00
Adam Warner 9fefa11c41 Tidy up a few things in the readme and code.
Check that pihole-FTL is configured with upstream servers or it will not function!

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2024-03-10 19:29:38 +00:00
Christian König 24090b227e Add dockerfile frontend synatax line
Signed-off-by: Christian König <ckoenig@posteo.de>
2024-01-10 13:49:05 +01:00
Christian König dbf3ddfa24 Update alpine to 3.19
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-12-16 23:23:21 +01:00
Adam Warner 7f89be5b1d install the logrotate file into /etc/pihole at startup in case of volume mounting
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-11-06 21:43:42 +00:00
Christian König 8a6bda4a89 Create dir for logrotate statefile
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-11-03 22:05:29 +01:00
Adam Warner 23fe63dff6 Get rid of the SKIPGRAVITYONBOOT environment variable. Instead, only run gravity on a fresh volume if the gravity database does not exist. There isn't really any need for gravity to be updated on every start (current default behaviour)
This will still run the gravity migration scripts on every boot if the gravity database exists

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-11-03 14:22:43 +00:00
Christian König 06819bdd51 Install logrotate
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-10-31 21:16:05 +01:00
Christian König c9e23f5a92 /etc/pihole is already created within the Dockerfile
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-10-30 23:34:48 +01:00
Christian König 752c49e5de Install logrotate from repo
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-10-30 23:31:40 +01:00
Adam Warner b688b46f13 linux/arm64/v8 should be linux/arm64.
This is a regression, added a note to make sure it does not happen again

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-30 21:22:18 +00:00
Adam Warner 335ec7e40d explicitly test for pwhash containing a value beginning $BALOON-SHA256 2023-10-28 19:47:59 +01:00
Adam Warner 5c7ff5c539 TARGETPLATFORM needs to be set
Co-authored-by: yubiuser <ckoenig@posteo.de>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-22 22:14:31 +01:00
Adam Warner 74657d01a9 - Bring back the logic from v5 containers for web password
- Update readme to take into accounts changes to FTLs environment variable handling
- shell/md linting, tidy away some code that is no longer needed

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-22 17:42:27 +01:00
Adam Warner 0784964f60 This is all now handled natively in FTL, no need for the bash
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-20 11:39:28 +01:00
Adam Warner 0489e57d10 Add special handling for FTL Config names that have underscores in them
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-16 17:11:11 +01:00
Adam Warner 6fa1759814 AdminLTE -> web
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-10-08 14:06:35 +01:00
Adam Warner 92ab9ad4ac Merge pull request #1423 from pi-hole/v6/additional_packages
Allow end user to add additional packages to the image
2023-09-25 22:36:36 +01:00
Adam Warner bf12b02636 Update src/start.sh
Co-authored-by: RD WebDesign <github@rdwebdesign.com.br>
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2023-09-25 20:00:22 +01:00
Adam Warner 672797b229 Remove the "INSTALL_DEV_TOOLS" environment variable in favour of "ADDITIONAL_PACKAGES", to allow user to add any package they wish to the container. Will be mentioned in README with a HERE BE DRAGONS warning.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-09-21 00:01:37 +01:00
Adam Warner 0704f06cd8 Update src/start.sh
Co-authored-by: yubiuser <ckoenig@posteo.de>
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2023-09-10 20:42:10 +01:00
Adam Warner 76e09bf15a Give users an option to silence the FTL log output by passing in the environment variable TAIL_FTL_LOG with a value of 0. Defaults to enabled (1)
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-09-03 13:02:50 +01:00
Adam Warner 374f6f2537 Add in a test to kill start.sh and then ensure that pihole-FTL is gracefully exited.
We add in some sleeps to ensure that the log file is being written to before we check it
Log entry tests are based on many different passes of running this locally with all sorts of timeouts and sleeps, this seems to be the most consistent

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-08-09 23:31:39 +01:00
Adam Warner 696895fa59 Fix some broken logic in the gravity skip code (I should have read it better)
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-08-09 22:15:41 +01:00
Adam Warner 94795db7e9 correct tini path
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-08-09 21:38:49 +01:00
Adam Warner 3cebec9344 Add tini anyway (see `tini + bash 4.x at https://ahmet.im/blog/minimal-init-process-for-containers/)
bash isn't going anywhere for the time being

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-08-09 21:20:12 +01:00
Adam Warner b674a8bde7 Who needs an init system anyway? Add a trap to ensure that pihole-FTL shuts down cleanly on container exit.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2023-08-09 21:20:11 +01:00
Adam Warner fa2eb0d2f5 Merge pull request #1402 from edgd1er/skigravityonboot
if skipgravityonboot set, check db version.
2023-08-09 19:47:04 +01:00
Adam Warner 0748c7fc62 Update src/start.sh
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2023-08-09 19:46:48 +01:00
Adam Warner f24dd34e37 Update src/start.sh
Signed-off-by: Adam Warner <github@adamwarner.co.uk>
2023-08-02 23:00:00 +01:00
Christian König 81e7671441 Revert alias and make branch configurable
Signed-off-by: Christian König <ckoenig@posteo.de>
2023-08-02 22:20:20 +02:00