--- title: "Install Site" description: "Install Newt as a binary or Docker container" --- Newt can be installed as either a static binary executable or a Docker container. Configuration is passed via CLI arguments in both cases. You **must first create a site and copy the Newt config** in Pangolin before running Newt. - Static executable - Cross-platform support - Easy to install and run - Systemd service support - Containerized deployment - Environment variables - Docker Compose support - Easy management ## Binary Installation ### Quick Install (Recommended) Use this command to automatically install Newt. It detects your system architecture automatically and always pulls the latest version, adding Newt to your PATH: ```bash curl -fsSL https://digpangolin.com/get-newt.sh | bash ``` ### Manual Download Binaries for Linux, macOS, and Windows are available in the [GitHub releases](https://github.com/fosrl/newt/releases) for ARM and AMD64 (x86_64) architectures. Download and install manually: ```bash wget -O newt "https://github.com/fosrl/newt/releases/download/{version}/newt_{architecture}" && chmod +x ./newt ``` Replace `{version}` with the desired version and `{architecture}` with your architecture. Check the [release notes](https://github.com/fosrl/newt/releases) for the latest information. ### Running Newt Run Newt with the configuration from Pangolin: ```bash newt \ --id 31frd0uzbjvp721 \ --secret h51mmlknrvrwv8s4r1i210azhumt6isgbpyavxodibx1k2d6 \ --endpoint https://example.com ``` ### Permanent Installation Install to your PATH (may need to run as root): ```bash mv ./newt /usr/local/bin ``` The quick installer will do this step for you. ### Systemd Service Create a basic systemd service: ```ini title="/etc/systemd/system/newt.service" [Unit] Description=Newt After=network.target [Service] ExecStart=/usr/local/bin/newt --id 31frd0uzbjvp721 --secret h51mmlknrvrwv8s4r1i210azhumt6isgbpyavxodibx1k2d6 --endpoint https://example.com Restart=always User=root [Install] WantedBy=multi-user.target ``` Make sure to move the binary to `/usr/local/bin/newt` before creating the service! ## Docker Installation ### Pull the Image Pull the latest Newt image from Docker Hub: ```bash docker pull fosrl/newt:latest ``` ### Run with Docker Run Newt with CLI arguments from Pangolin: ```bash docker run -it fosrl/newt --id 31frd0uzbjvp721 \ --secret h51mmlknrvrwv8s4r1i210azhumt6isgbpyavxodibx1k2d6 \ --endpoint https://example.com ``` ### Docker Compose #### Environment Variables (Recommended) ```yaml title="docker-compose.yml" services: newt: image: fosrl/newt container_name: newt restart: unless-stopped environment: - PANGOLIN_ENDPOINT=https://example.com - NEWT_ID=2ix2t8xk22ubpfy - NEWT_SECRET=nnisrfsdfc7prqsp9ewo1dvtvci50j5uiqotez00dgap0ii2 ``` #### CLI Arguments ```yaml title="docker-compose.yml" services: newt: image: fosrl/newt container_name: newt restart: unless-stopped command: - --id 31frd0uzbjvp721 - --secret h51mmlknrvrwv8s4r1i210azhumt6isgbpyavxodibx1k2d6 - --endpoint https://example.com ``` Start the service: ```bash docker compose up -d ``` ## Platform-Specific Installation ### Unraid Newt is available in the Unraid Community Applications store. Search for "Newt" and follow the installation prompts. Enter the ID, secret, and endpoint from Pangolin in the template fields. Newt on CA ### Portainer and Other UIs Container management UIs like Portainer typically allow passing commands and environment variables to containers similar to Docker Compose. Look for a commands or arguments configuration section and follow the relevant guides.