1.3 KiB
1.3 KiB
PMFlow Docker Server Deploy Guide
1. Prerequisites
- Remote host has Docker Engine and Docker Compose plugin.
- Remote host can be accessed by SSH.
- This machine can run
rsyncandssh. docker-compose.ymland.env.exampleexist in project root.
2. Local one-line deploy
bash scripts/deploy_remote_docker.sh <host> <user> </opt/pmflow>
Examples:
bash scripts/deploy_remote_docker.sh 192.168.1.100 root /opt/pmflow
SSH_KEY=~/.ssh/id_rsa bash scripts/deploy_remote_docker.sh 8.8.8.8 ubuntu /srv/pmflow
3. What the script does
- Create remote target directory.
- Sync local project with
rsync --delete(excludes.git,venv,node_modules,logs). - Create
.envfrom.env.examplewhen missing. - Run
docker compose build && docker compose up -d.
4. Daily operations (local)
bash scripts/docker_stack.sh start
bash scripts/docker_stack.sh health
bash scripts/docker_stack.sh status
bash scripts/docker_stack.sh logs backend
bash scripts/docker_stack.sh restart
bash scripts/docker_stack.sh stop
5. Remote troubleshoot
ssh <user>@<host> "cd /opt/pmflow && docker compose ps"
ssh <user>@<host> "cd /opt/pmflow && docker compose logs --tail=200 backend"
ssh <user>@<host> "cd /opt/pmflow && docker compose down && docker compose up -d"