```sh ssh igor@192.168.200.87 -p 22 ``` Install ```sh sudo apt update && sudo apt upgrade -y && sudo apt-get install python3-venv python3-pip && sudo apt install docker.io -y && sudo apt install -y docker-compose && sudo systemctl enable docker && sudo systemctl start docker && sudo usermod -aG docker $USER && docker-compose --version ``` Create folder for Woodpecker ```sh sudo mkdir -p /opt/woodpecker && cd /opt/woodpecker ``` ```sh cd /opt/woodpecker sudo tee docker-compose.yml <<'EOF' services: woodpecker-server: image: woodpeckerci/woodpecker-server:latest restart: always ports: - "8000:8000" # Web UI - "8081:9000" # RPC environment: WOODPECKER_OPEN: "true" # Открытый доступ, можно отключить позже WOODPECKER_HOST: "http://192.168.200.87:8000" WOODPECKER_GITEA: "true" WOODPECKER_GITEA_URL: "https://git.mesh.kz" WOODPECKER_GITEA_CLIENT: "e38fdb9c-2878-4e12-9f9a-f75cc7e7e7e3" WOODPECKER_GITEA_SECRET: "gto_gapgutecxrghq4sgbv5lrhoht3h5vfgo6ewidf7uxawkn7fhpuma" WOODPECKER_ADMIN: "your-admin-username" volumes: - woodpecker-data:/var/lib/woodpecker woodpecker-agent: image: woodpeckerci/woodpecker-agent:latest restart: always depends_on: - woodpecker-server environment: WOODPECKER_SERVER: "woodpecker-server:9000" WOODPECKER_SECRET: "supersecret" volumes: - /var/run/docker.sock:/var/run/docker.sock volumes: woodpecker-data: EOF ``` ```sh cd /opt/woodpecker && sudo docker-compose up -d ``` ```sh cd /opt/woodpecker && sudo docker-compose down ``` Open URL in browser ```sh start http://192.168.200.87:8000 ``` Create OAuth2 Application in: ```conf https://git.mesh.kz/user/settings/applications https://git.mesh.kz/org/ccalm.org/settings/applications http://192.168.200.87:8000/authorize ```