when: branch: main event: [push, manual] steps: - name: build image: docker:cli volumes: - /var/run/docker.sock:/var/run/docker.sock commands: - docker build -t dashboard:latest . - name: deploy image: docker:cli volumes: - /var/run/docker.sock:/var/run/docker.sock - /opt/docker/dashboard/.env:/opt/docker/dashboard/.env commands: - docker stop dashboard || true - docker rm dashboard || true - docker run -d --name dashboard --restart unless-stopped -p 3001:3001 --env-file /opt/docker/dashboard/.env dashboard:latest