Skip to content

Sailbox is a Docker image that simplifies setting up a remote development environment. It includes essential programming tools and provides CRUD options for managing SSH users. With Sailbox, you can easily set up a remote environment for any IDE or even without an IDE.

License

Notifications You must be signed in to change notification settings

maxmielchen/Sailbox

Repository files navigation

repo count top count sailbox

Sailbox

Sailbox is a Docker image that simplifies setting up a remote development environment. It includes essential programming tools and provides CRUD options for managing SSH users. With Sailbox, you can easily set up a remote environment for any IDE or even without an IDE.


Table of Contents


Features

  • SSH server out-of-the-box
  • User management (CRUD) via the sail Bash CLI
  • Docker-in-Docker support
  • Preinstalled: Git, Vim, Neovim, Nano, curl, gh, htop

Quickstart (Docker CLI)

Pull the image

docker pull ghcr.io/maxmielchen/sailbox:latest

Start a container

docker run --name box -p 201:22 -v /var/run/docker.sock:/var/run/docker.sock -d ghcr.io/maxmielchen/sailbox:latest

Add a user

docker exec -it box sail user create --username OUR_USERNAME --password OUR_PASSWORD -r -s

Restart the container

docker restart box

Quickstart (Docker Compose)

Example docker-compose.yml

services:
  sailbox:
    image: ghcr.io/maxmielchen/sailbox:latest
    container_name: box
    ports:
      - "201:22"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

Start

docker compose up -d

Add a user

docker exec -it box sail user create --username OUR_USERNAME --password OUR_PASSWORD -r -s

Sail CLI Commands

With the sail command (a symlink to the Bash script), you can manage users:

  • Create a user:
    sail user create --username USER --password PASS [-r] [-s]
    # -r: Create user as root
    # -s: Generate SSH key
  • Delete a user:
    sail user delete --username USER
  • Show help:
    sail help

Useful Commands

  • Show logs:
    docker logs box
  • Stop the container:
    docker stop box
  • Remove the container:
    docker rm box

For more information, see the documentation in the sail-bash/ folder.

About

Sailbox is a Docker image that simplifies setting up a remote development environment. It includes essential programming tools and provides CRUD options for managing SSH users. With Sailbox, you can easily set up a remote environment for any IDE or even without an IDE.

Resources

License

Stars

Watchers

Forks

Packages