Coder Social home page Coder Social logo

thomiceli / opengist Goto Github PK

View Code? Open in Web Editor NEW
1.4K 8.0 72.0 802 KB

Self-hosted pastebin powered by Git, open-source alternative to Github Gist.

Home Page: https://demo.opengist.io

License: GNU Affero General Public License v3.0

Dockerfile 0.60% Makefile 0.98% Go 87.66% TypeScript 9.18% Shell 1.59%
docker gist golang typescript pastebin pastebin-service self-hosted go tailwindcss git

opengist's Introduction

Opengist

Opengist

Opengist is a self-hosted pastebin powered by Git. All snippets are stored in a Git repository and can be read and/or modified using standard Git commands, or with the web interface. It is similiar to GitHub Gist, but open-source and could be self-hosted.

DocumentationDiscordDemo

GitHub release (latest SemVer) License Go CI Go Report Card

Features

  • Create public, unlisted or private snippets
  • Init / Clone / Pull / Push snippets via Git over HTTP or SSH
  • Syntax highlighting ; markdown & CSV support
  • Search code in snippets ; browse users snippets, likes and forks
  • Embed snippets in other websites
  • Revisions history
  • Like / Fork snippets
  • Download raw files or as a ZIP archive
  • OAuth2 login with GitHub, GitLab, Gitea, and OpenID Connect
  • Restrict or unrestrict snippets visibility to anonymous users
  • Docker support
  • More...

Quick start

With Docker

Docker images are available for each release :

docker pull ghcr.io/thomiceli/opengist:1.7

It can be used in a docker-compose.yml file :

  1. Create a docker-compose.yml file with the following content
  2. Run docker compose up -d
  3. Opengist is now running on port 6157, you can browse http://localhost:6157
version: "3"

services:
  opengist:
    image: ghcr.io/thomiceli/opengist:1.7
    container_name: opengist
    restart: unless-stopped
    ports:
      - "6157:6157" # HTTP port
      - "2222:2222" # SSH port, can be removed if you don't use SSH
    volumes:
      - "$HOME/.opengist:/opengist"

You can define which user/group should run the container and own the files by setting the UID and GID environment variables :

services:
  opengist:
    # ...
    environment:
      UID: 1001
      GID: 1001

Via binary

Download the archive for your system from the release page here, and extract it.

# example for linux amd64
wget https://github.com/thomiceli/opengist/releases/download/v1.7.2/opengist1.7.2-linux-amd64.tar.gz

tar xzvf opengist1.7.2-linux-amd64.tar.gz
cd opengist
chmod +x opengist
./opengist # with or without `--config config.yml`

Opengist is now running on port 6157, you can browse http://localhost:6157

From source

Requirements: Git (2.28+), Go (1.22+), Node.js (16+), Make (optional, but easier)

git clone https://github.com/thomiceli/opengist
cd opengist
make
./opengist

Opengist is now running on port 6157, you can browse http://localhost:6157


To create and run a development environment, see run-development.md.

Documentation

The documentation is available in /docs directory.

License

Opengist is licensed under the AGPL-3.0 license.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.