0
Fork 0
mirror of https://github.com/thomiceli/opengist.git synced 2025-02-05 01:38:45 -05:00
Self-hosted pastebin powered by Git, open-source alternative to Github Gist.
Find a file
Thomas Miceli 8c7e941182 v1.9.1
2025-02-04 21:22:47 +01:00
.github Add Docker hub in release images registry CI 2025-02-02 20:11:58 +01:00
deploy v1.9.1 2025-02-04 21:22:47 +01:00
docker
docs v1.9.1 2025-02-04 21:22:47 +01:00
internal Translations update from Opengist (#401) 2025-02-03 23:43:59 +01:00
public Search gists on user profile with title, visibility, language & topics (#422) 2025-02-02 18:14:03 +01:00
scripts
templates Fix user avatar on gist likes list (#425) 2025-02-03 23:43:43 +01:00
.dockerignore
.gitattributes
.gitignore
CHANGELOG.md v1.9.1 2025-02-04 21:22:47 +01:00
config.yml feat: Add custom instance names (#399) 2024-12-15 17:39:51 +01:00
Dockerfile Enforce git config on startup (#383) 2024-11-21 11:23:57 +01:00
go.mod Update go deps (#430) 2025-02-04 21:17:10 +01:00
go.sum Update go deps (#430) 2025-02-04 21:17:10 +01:00
LICENSE
Makefile
opengist.go
package-lock.json Use jdenticon for default avatars (#416) 2025-01-27 00:08:50 +01:00
package.json Use jdenticon for default avatars (#416) 2025-01-27 00:08:50 +01:00
README.md v1.9.1 2025-02-04 21:22:47 +01:00

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 similar to GitHub Gist, but open-source and could be self-hosted.

Home PageDocumentationDiscordDemo

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

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
  • Add topics to snippets
  • 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.9

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
services:
  opengist:
    image: ghcr.io/thomiceli/opengist:1.9
    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.9.1/opengist1.9.1-linux-amd64.tar.gz

tar xzvf opengist1.9.1-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.23+), 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 at https://opengist.io/ or in the /docs directory.

License

Opengist is licensed under the AGPL-3.0 license.