Popularity
6.6
Stable
Activity
7.6
-
632
6
19

Programming language: Go
License: Apache License 2.0
Latest version: v0.0.3

Gebug alternatives and similar packages

Based on the "Other Software" category.
Alternatively, view Gebug alternatives based on common mentions on social networks and blogs.

  • syncthing

    Open Source Continuous File Synchronization
  • hugo

    The world’s fastest framework for building websites.
  • Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
    Promo www.influxdata.com
    InfluxDB Logo
  • restic

    Fast, secure, efficient backup program
  • croc

    Easily and securely send things from one computer to another :crocodile: :package:
  • Gor

    GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.
  • Seaweed File System

    DISCONTINUED. SeaweedFS is a fast distributed storage system for blobs, objects, files, and data lake, for billions of files! Blob store has O(1) disk seek, cloud tiering. Filer supports Cloud Drive, cross-DC active-active replication, Kubernetes, POSIX FUSE mount, S3 API, S3 Gateway, Hadoop, WebDAV, encryption, Erasure Coding. [Moved to: https://github.com/seaweedfs/seaweedfs]
  • rkt

    DISCONTINUED. An App Container runtime that integrates with init systems, is compatible with other container formats like Docker, and supports alternative execution engines like KVM.
  • limetext

    Open source API-compatible alternative to the text editor Sublime Text
  • toxiproxy

    :alarm_clock: :fire: A TCP proxy to simulate network and system conditions for chaos and resiliency testing
  • LiteIDE

    LiteIDE is a simple, open source, cross-platform Go IDE.
  • Comcast

    Simulating shitty network connections so you can build better systems.
  • confd

    Manage local application configuration files using templates and data from etcd or consul
  • drive

    Google Drive client for the commandline
  • scc

    Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go
  • nes

    NES emulator written in Go.
  • Duplicacy

    A new generation cloud backup tool
  • heka

    DISCONTINUED. DEPRECATED: Data collection and processing made easy.
  • fleet

    DISCONTINUED. A Distributed init System.
  • blocky

    Fast and lightweight DNS proxy as ad-blocker for local network with many features
  • Docker

    Notary is a project that allows anyone to have trust over arbitrary collections of data
  • Juju

    Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).
  • myLG

    Network Diagnostic Tool
  • Stack Up

    Super simple deployment tool - think of it like 'make' for a network of servers
  • snap

    DISCONTINUED. The open telemetry framework
  • GoBoy

    Multi-platform Nintendo Game Boy Color emulator written in Go
  • Documize

    Modern Confluence alternative designed for internal & external docs, built with Go + EmberJS
  • Circuit

    Circuit: Dynamic cloud orchestration http://gocircuit.org
  • lgo

    Interactive Go programming with Jupyter
  • GoDNS

    A dynamic DNS client tool that supports AliDNS, Cloudflare, Google Domains, DNSPod, HE.net & DuckDNS & DreamHost, etc, written in Go.
  • Plik

    Plik is a temporary file upload system (Wetransfer like) in Go.
  • borg

    Search and save shell snippets without leaving your terminal
  • vFlow

    Enterprise Network Flow Collector (IPFIX, sFlow, Netflow)
  • shell2http

    Executing shell commands via HTTP server
  • portal

    Portal is a quick and easy command-line file transfer utility from any computer to another.
  • peg

    Peg, Parsing Expression Grammar, is an implementation of a Packrat parser generator.
  • Gokapi

    Lightweight selfhosted Firefox Send alternative without public upload. AWS S3 supported.
  • Go Package Store

    An app that displays updates for the Go packages in your GOPATH.
  • Guora

    🖖🏻 A self-hosted Quora like web application written in Go 基于 Golang 类似知乎的私有部署问答应用 包含问答、评论、点赞、管理后台等功能
  • Postman

    CLI tool for batch-sending email via any SMTP server.
  • Leaps

    A pair programming service using operational transforms
  • gfile

    Direct file transfer over WebRTC
  • gocc

    Parser / Scanner Generator
  • mockingjay

    Fake server, Consumer Driven Contracts and help with testing performance from one configuration file with zero system dependencies and no coding whatsoever
  • sake

    :robot: sake is a task runner for local and remote hosts
  • yai

    Your AI powered terminal assistant.
  • ipe

    DISCONTINUED. An open source Pusher server implementation compatible with Pusher client libraries written in GO
  • woke

    Detect non-inclusive language in your source code.
  • GoNB

    GoNB, a Go Notebook Kernel for Jupyter
  • ide

    A Go code editor. With debugging and Autocomplete. 一个 Go 代码编辑器,具有 DEBUGGING 和 AUTOCOMPLETE
  • Cherry

    A tiny webchat server in Go.

Do you think we are missing an alternative of Gebug or a related project?

Add another 'Other Software' Package

README

[Alt text](assets/logo.png?raw=true"Gebug")

A tool that makes debugging of Dockerized Go applications super easy by enabling Debugger and Hot-Reload features, seamlessly.

codecov PkgGoDev Go Report Card

License

Installing

go get -u github.com/moshebe/gebug

Usage

➜ gebug --help
Gebug helps you setup a fully suited debugging environment of Go application running inside a container.
It enables options like connecting with remote debugger and breakpoints inside the code or 
use hot-reload features which auto-build and run upon new change detected on the source code.

Usage:
  gebug [command]

Available Commands:
  clean       Clean Gebug stack
  destroy     Destroy the Gebug project
  help        Help about any command
  init        Initialize a Gebug project
  start       Start Gebug services
  ui          Start Gebug web UI
  version     Gebug's version

Flags:
  -h, --help             help for gebug
  -v, --verbose          enable verbose mode
  -w, --workdir string   your Go application root directory (default ".")

Use "gebug [command] --help" for more information about a command.

Demo

Configure workspace for Hot-Reload

[](assets/demo-hot-reload.gif)

Goland Debugger

[](assets/demo-goland-debugger.gif)

Visual Studio Code Debugger

[](assets/demo-vscode-debugger.gif)

How Does It Work

Nothing special, no voodoo. Gebug just handles the Dockerfile and docker-compose configuration files generation with a easy-to-use command line utility.
You can find the generated files in your project under .gebug directory.
We are all programmers and I know you like to play with your toys, so feel free to edit any of those files in order to fit your use-case. Just make sure to run gebug start --skip-generate so the next run won't override your changes.

Let's examine the config.yaml fields so you will feel more comfortable editing as you wish:

Field Default Description
name application/project name
output_binary /app output binary artifact inside the runtime container
build_command go build -o {{.output_binary}} build command inside the runtime container. Note you can reference other configuration fields. When enabling Debugger -gcflags="all=-N -l" will be appended to the build command to stop compiler optimization and symbol removing
run_command {.output_binary}} run command, probably most of the time will just be the binary artifact path
runtime_image golang:1.15.2 base Docker image for the runtime container
debugger_enabled false whether to enable delve debugger inside the container or just use hot-reload
debugger_port 40000 delve debugger listen port, relevant only if debugger_enabled was set
expose_ports [] list of ports to expose inside the container. Uses the same syntax as docker-compose for mapping between host and container ports(e.g: "8080:8080"). No need to add the delve debugger listen port as it will be auto-added
networks [] list of docker external networks to join. if no network is selected, a new one will be created
environment [] list of environment variables to be set inside the container. Syntax: FOO=BAR or just FOO which will take the variable FOO from host and set it with its value

Web UI

If you prefer a web interface over a terminal or YAML file, you can simply run the following command in your Gebug project directory

gebug ui

A simple web application will be opened and let you control the Gebug configuration of your project directly from your browser.

[](assets/demo-webui.gif)

License

Gebug is released under the Apache 2.0 license. See LICENSE.


*Note that all licence references and agreements mentioned in the Gebug README section above are relevant to that project's source code only.