Slink: A Self-Hosted Image Sharing Platform for Privacy-Conscious Users
Tired of using third-party image-sharing platforms that track your data or impose limitations? Slink is here to solve that. Built with Symfony and SvelteKit, Slink is an open-source, self-hosted image-sharing platform designed for sharing images with friends, family, colleagues, or even showcasing your artwork to the community.
In this guide, we’ll cover what Slink is, its key features, and how to install it on your own server.
Let’s dive in!
What is Slink?
Slink is a self-hosted image-sharing platform that gives you complete control over your images. Whether you’re an artist, a developer, or someone who just wants to share photos privately, Slink offers a straightforward and secure way to host and share your images.
It’s particularly useful for:
- 4Sharing personal photos with friends and family.
- Showcasing artwork without relying on third-party platforms.
- Hosting project screenshots for portfolios, blogs, and GitHub repositories.
Since it’s self-hosted, you control your data, privacy, and usage policies.
Key Features of Slink
Slink is packed with features that make it a great choice for self-hosted image sharing:
- Authentication:
- Users can sign up and log in securely.
- User Approval:
- Admins can require user approval before allowing uploads. This helps maintain control over who can upload content.
- Image Upload:
- Supports a variety of formats, including SVG, PNG, JPG, WEBP, BMP, ICO, and GIF.
- Community Platform:
- Artists can use Slink to share their work with a wider community.
- Developer-Friendly:
- Perfect for developers who want to self-host images for their projects, portfolios, or blogs.
These features make Slink versatile and useful for different types of users.
How to Install Slink
Here’s a step-by-step guide to installing Slink on your own server.
Prerequisites
Before you begin, make sure you have the following:
- Docker and Docker Compose installed on your system.
- Git installed.
You can install Docker and Git with these commands:
On Ubuntu/Debian:
sudo apt update
sudo apt install docker.io docker-compose git
On Fedora:
sudo dnf install docker docker-compose git
On Arch Linux:
sudo pacman -S docker docker-compose git
Start and enable Docker:
sudo systemctl start docker
sudo systemctl enable docker
Step 1: Clone the Slink Repository
First, clone the Slink GitHub repository to your server:
git clone https://github.com/andrii-kryvoviaz/slink.git
cd slink
Step 2: Configure Environment Variables
Slink comes with a sample .env
file. Copy it and modify the settings as needed:
cp .env.example .env
Edit the .env
file with your preferred text editor (e.g., nano
):
nano .env
Update the following values:
- Database settings (e.g.,
DB_USER
,DB_PASSWORD
) - Application URL (e.g.,
APP_URL
)
Save and exit the editor (Ctrl + O
, then Ctrl + X
).
Step 3: Build and Run Slink with Docker Compose
Use Docker Compose to build and run the application:
docker-compose up --build -d
This command will:
- Pull the necessary Docker images.
- Build the application.
- Start the containers in detached mode (
-d
).
Step 4: Access Slink
Once the containers are running, access Slink in your web browser at:
http://localhost:8080
If you’re hosting it on a remote server, replace localhost
with your server’s IP address or domain name.
Step 5: Create an Admin User
To create an admin user, run the following command in the Slink container:
docker-compose exec php php bin/console app:create-admin
Follow the prompts to set up your admin account.
Step 6: Start Sharing Images
Now that Slink is up and running, you can:
- Sign up or log in to your account.
- Upload images in supported formats (SVG, PNG, JPG, WEBP, BMP, ICO, GIF).
- Approve new users if you enabled the user approval feature.
Your self-hosted image-sharing platform is ready!
Final Thoughts
Slink is a powerful, open-source solution for anyone looking to share images without relying on third-party platforms. Whether you’re an artist, a developer, or someone who values privacy, Slink gives you full control over your images.
With features like authentication, user approval, and support for various image formats, Slink makes self-hosting simple and secure.
Try it out and take back control of your image-sharing experience!
Happy self-hosting! 📸✨