1.4 KiB
1.4 KiB
Taskfile Build Image
The Taskfile container runs every project with a Taskfile.
Source: https://git.taskfile.build/src/branch/main/image
Usage
Setup environment variables:
export GIT_URL="https://git.taskfile.build"
export TASK_COMMANDS="install,build-docs"
export CADDY_ROOT="site"
Run the Taskfile Build image:
run-container() {
container_name="taskfile-build"
image_tag="mintsystem/taskfile.build:latest"
docker pull "$image_tag"
docker rm -f "$container_name"
docker volume rm "$container_name"
echo "Open http://localhost:8080 in your browser"
docker run -p 8080:80 -d \
--name "$container_name" \
-e GIT_URL="https://git.taskfile.build" \
-e TASK_COMMANDS="install,build-docs" \
-e CADDY_ROOT="site" \
-v "$container_name":/app \
"$image_tag"
}
The entrypoint.sh script of the container will clone the project from GIT_URL to /app/repo. If the project is already cloned it will pull from origin. Afterwards it runs each TASK_COMMANDS in the root of the cloned repository with the Taskfile ./task <command>. Finally, if not other command is given a Caddy webserver that serves static content from the CADDY_ROOT path is started.