Update README.md instructions. Clean up docker composee & add .env for docker compose file.
This commit is contained in:
parent
6f336b18d3
commit
94a7880db3
2
.gitignore
vendored
2
.gitignore
vendored
@ -24,6 +24,8 @@ dist-ssr
|
|||||||
*.sw?
|
*.sw?
|
||||||
|
|
||||||
# ENV
|
# ENV
|
||||||
|
docker/.env
|
||||||
|
!docker/.env.example
|
||||||
.env
|
.env
|
||||||
.env*
|
.env*
|
||||||
!.env.example
|
!.env.example
|
||||||
|
12
README.md
12
README.md
@ -34,13 +34,13 @@ Theo solved this by doing all of the work client side. Once you've went to https
|
|||||||
|
|
||||||
### How to self host
|
### How to self host
|
||||||
|
|
||||||
1. Clone the repo
|
1. Clone the repo.
|
||||||
2. Fill out the .env.example file & rename it to .env
|
2. Fill out the .env.example file in the root directory & rename it to .env.
|
||||||
3. Run `pnpm install` from the root of the repo
|
3. Run `pnpm install && pnpm build` from the root of the repo.
|
||||||
4. Run `pnpm build` from the root of the repo
|
4. Navigate to the docker folder & fill out the .env.example file & rename it to .env.
|
||||||
5. Navigate to the docker folder & run `sudo docker-compose up -d`
|
5. Run `sudo docker compose up -d` from within the docker directory.
|
||||||
|
|
||||||
### How to update the website
|
### How to update the website
|
||||||
|
|
||||||
1. Run `pnpm build` from the root of the repo
|
1. Run `pnpm build` from the root of the repo.
|
||||||
2. Navigate to the docker folder & run `sudo docker compose down && sudo docker-compose up -d`
|
2. Navigate to the docker folder & run `sudo docker compose down && sudo docker-compose up -d`
|
||||||
|
3
docker/.env.example
Normal file
3
docker/.env.example
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
PORT=5000
|
||||||
|
DOMAIN=bang.mydomain.com
|
||||||
|
NETWORK=bridge
|
@ -1,23 +1,23 @@
|
|||||||
version: '3.8'
|
|
||||||
|
|
||||||
services:
|
services:
|
||||||
bang-web-server:
|
bang-web-server:
|
||||||
|
env_file:
|
||||||
|
- .env
|
||||||
build:
|
build:
|
||||||
context: ../ # point to the parent directory where package.json and source code reside
|
context: ../
|
||||||
dockerfile: docker/Dockerfile # specific path to the Dockerfile
|
dockerfile: docker/Dockerfile
|
||||||
container_name: bang
|
container_name: bang
|
||||||
domainname: bang.gbrown.org
|
domainname: ${DOMAIN}
|
||||||
hostname: bang
|
|
||||||
networks:
|
networks:
|
||||||
- node_apps
|
- ${NETWORK}
|
||||||
|
hostname: bang
|
||||||
ports:
|
ports:
|
||||||
- "5000:5000"
|
- ${PORT}:${PORT}
|
||||||
tty: true
|
tty: true
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
volumes:
|
volumes:
|
||||||
- ../:/app # mount the parent directory to /app in the container
|
- ../:/app
|
||||||
command: serve -s /app/dist -l 5000
|
command: serve -s /app/dist -l 5000
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
node_apps:
|
${NETWORK}:
|
||||||
external: true
|
external: true
|
||||||
|
52
docker/update-bang
Executable file
52
docker/update-bang
Executable file
@ -0,0 +1,52 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Function to check if we're in the correct directory
|
||||||
|
check_directory() {
|
||||||
|
if [ -d "docker" ] && [ -f "package.json" ]; then
|
||||||
|
return 0 # We're in the root directory
|
||||||
|
fi
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Initialize root_dir
|
||||||
|
root_dir=""
|
||||||
|
|
||||||
|
# Check if argument is provided
|
||||||
|
if [ $# -eq 1 ]; then
|
||||||
|
# Use provided path
|
||||||
|
if [ -d "$1" ]; then
|
||||||
|
root_dir="$1"
|
||||||
|
cd "$root_dir" || exit 1
|
||||||
|
else
|
||||||
|
echo "Error: Provided directory does not exist"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# No argument provided, try to determine location
|
||||||
|
current_dir=$(basename "$(pwd)")
|
||||||
|
|
||||||
|
if [ "$current_dir" = "docker" ]; then
|
||||||
|
cd .. || exit 1
|
||||||
|
elif [ "$current_dir" != "Bang" ]; then
|
||||||
|
echo "Error: Not in the correct directory and no valid path provided"
|
||||||
|
echo "Please either:"
|
||||||
|
echo "1. Run this script from the Bang root directory"
|
||||||
|
echo "2. Run this script from the docker directory"
|
||||||
|
echo "3. Provide the path to the Bang root directory as an argument"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Verify we're in the correct directory
|
||||||
|
if ! check_directory; then
|
||||||
|
echo "Error: Not in the correct directory structure"
|
||||||
|
echo "Make sure you're in a directory with 'docker' folder and package.json"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
git pull
|
||||||
|
pnpm build
|
||||||
|
cd docker || exit 1
|
||||||
|
sudo docker compose down
|
||||||
|
sudo docker compose up -d
|
||||||
|
cd ..
|
Loading…
x
Reference in New Issue
Block a user