server deploy

This commit is contained in:
sfja 2026-03-27 18:19:50 +01:00
parent 1647bea339
commit 83bc971f87
5 changed files with 88 additions and 4 deletions

View File

@ -1,6 +1,6 @@
FROM docker.io/alpine:3.23.3 AS builder FROM docker.io/alpine:3.23.3 AS builder
WORKDIR /workspace WORKDIR /workspace
RUN apk add make g++ RUN apk add build-base
COPY Makefile . COPY Makefile .
COPY src src COPY src src
COPY tests tests COPY tests tests

32
backend/README.md Normal file
View File

@ -0,0 +1,32 @@
```
useradd -m sfj
usermod -aG sudo sfj
passwd sfj
```
https://docs.docker.com/engine/install/debian/#install-using-the-repository
```
# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
```

22
backend/deploy.sh Executable file
View File

@ -0,0 +1,22 @@
#!/bin/bash
user=$1
if [[ $user == "" ]]; then
echo "Please specify server user"
echo "./deploy.sh <user>"
exit 1
fi
compose_file=docker-compose.yml
host=10.133.51.127
set -xe
scp $compose_file $user@$host:/home/$user/
# echo sudo -S docker compose down
# echo sudo docker compose up -d
# ssh $user@$host

View File

@ -1,11 +1,23 @@
services: services:
backend: backend:
build: . image: docker.io/sfja/h5-mst-backend:latest
ports: ports:
- "8888:5000" - "8888:5000"
mqtt: mqtt:
image: docker.io/rabbitmq:4.2.5 image: docker.io/rabbitmq:4.2.5-management
ports: ports:
- "5672:6000" - "1883:1883"
- "5672:5672"
- "15672:15672"
command: "/bin/bash -c \"rabbitmq-plugins enable --offline rabbitmq_mqtt rabbitmq_web_mqtt rabbitmq_amqp1_0; rabbitmq-server\""
environment:
RABBITMQ_DEFAULT_USER: devops
RABBITMQ_DEFAULT_PASS: Merc1234
volumes:
- rabbitmq_data:/var/lib/rabbitmq
- rabbitmq_log:/var/log/rabbitmq
volumes:
rabbitmq_data:
rabbitmq_log:

18
backend/publish.sh Executable file
View File

@ -0,0 +1,18 @@
#!/bin/bash
version=$1
if [[ $version == "" ]]; then
echo "Please specify version"
echo "./publish.sh <version e.g. 1.0>"
exit 1
fi
tag=sfja/h5-mst-backend:$version
set -xe
docker build -t $tag .
docker push $tag