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: - sed "s/='\(.*\)'$/=\1/; s/=\"\(.*\)\"$/=\1/" /opt/docker/dashboard/.env > /tmp/dashboard.env - docker stop dashboard || true - docker rm dashboard || true - docker run -d --name dashboard --restart unless-stopped -p 3002:3001 --env-file /tmp/dashboard.env -v /var/run/docker.sock:/var/run/docker.sock dashboard:latest