From 86fc7ca25921daabd72150a75f11c0a3c58e5ba1 Mon Sep 17 00:00:00 2001 From: Brad Treloar Date: Wed, 3 Sep 2025 23:32:03 +0930 Subject: [PATCH] Convert to docker compose --- README.md | 23 +++++++++-------------- docker-compose.yml | 13 +++++++++++++ docker/build.sh | 4 ---- docker/install.sh | 21 --------------------- docker/run.sh | 9 --------- 5 files changed, 22 insertions(+), 48 deletions(-) create mode 100644 docker-compose.yml delete mode 100755 docker/build.sh delete mode 100755 docker/install.sh delete mode 100755 docker/run.sh diff --git a/README.md b/README.md index b86f5a0..a172537 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ## Set up hugo and build HTML -````bash +```bash # Install hugo. sudo apt install hugo @@ -11,27 +11,22 @@ cd hugo hugo ``` -## Build and run server +## Prepare and run server ```bash # Set access credentials. ./passwd.sh username password -# Build/rebuild the image. -docker build --no-cache -t notes-server . +# Run the service. +docker compose up -d +``` -# Run the image, listening on port 42069. -docker run -d \ - --name notes-server \ - -v "/var/www/html/notes/hugo/public:/usr/share/nginx/html" \ - -p 42069:80 \ - notes-server -```` - -## Auth credentials setup +## Changing the login credentials ```bash # Overwrite the htpasswd file with new user credentials. -# (Rebuild the image to copy the new credentials.) ./passwd.sh username password + +# (Rebuild the image to copy the new credentials.) +docker compose down && docker compose up -d --build ``` diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..cdcfcaf --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +services: + server: + build: + context: docker + dockerfile: ./docker/Dockerfile + container_name: server + restart: always + volumes: + - ./hugo/public:/usr/share/nginx/html:ro + ports: + - "42069:80" + + diff --git a/docker/build.sh b/docker/build.sh deleted file mode 100755 index 9e5b88f..0000000 --- a/docker/build.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -docker container rm notes-server -docker build --no-cache -t notes-server . diff --git a/docker/install.sh b/docker/install.sh deleted file mode 100755 index d278470..0000000 --- a/docker/install.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -# Remove the existing container -systemctl stop notes.service -systemctl disable notes.service -docker container stop notes-server -docker container rm notes-server - -# Build the notes-server image. -docker build --no-cache -t notes-server . - -# Run the notes-server image. -docker run -d \ - --name notes-server \ - -v "${PWD}/../hugo/public:/usr/share/nginx/html" \ - -p 42069:80 \ - notes-server - -# Install and enable the systemctl service. -cp notes.service /etc/systemd/system/notes.service -systemctl enable notes.service diff --git a/docker/run.sh b/docker/run.sh deleted file mode 100755 index f6e5b31..0000000 --- a/docker/run.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# Run the notes-server image. -docker run \ - --name notes-server \ - -v "${PWD}/../hugo/public:/usr/share/nginx/html" \ - -p 42069:80 \ - notes-server -