Photo Stream is a self-hosted photo-sharing web application created by Waschinski that allows you to easily share your photos with friends and family. In this tutorial, we'll walk you through the steps to install Photo Stream on OpenBSD.
Before we begin, make sure your OpenBSD installation has the following:
Photo Stream is written in PHP and requires Composer to manage its dependencies. To install Composer, run the following command in your terminal:
sudo pkg_add composer
Next, you'll need to clone the Photo Stream repository to your web server's document root using the following command:
git clone https://github.com/waschinski/photo-stream.git /var/www/photo-stream
Now that you have cloned the repository, navigate to the directory where it was cloned (usually /var/www/photo-stream
) and install the dependencies using Composer:
cd /var/www/photo-stream
sudo -u _www composer install --no-dev
Photo Stream comes with a sample configuration file that you'll need to customize before you can use it. Start by copying the config.sample.php
file to config.php
:
cp config.sample.php config.php
Next, open the config.php
file in your favorite text editor (e.g. vi
or nano
) and configure the following settings:
base_url
- This should be the URL to your Photo Stream installation (e.g. http://example.com/photo-stream
)database
- Configure your database settings (e.g. pgsql:host=localhost;dbname=photo-stream
)mail
- Configure your email settings (e.g. smtp
server, username, and password)Once you have made the necessary changes to the configuration file, save it and exit the text editor.
Before you can run Photo Stream, you'll need to create the necessary database tables. To do this, navigate to the install/
directory and run the following command:
cd install
php create_database.php
If everything goes well, you should see a message saying that the database tables have been created.
Photo Stream needs to be able to write to some directories, so you'll need to grant write permissions to the following directories:
sudo chown _www /var/www/photo-stream/cache
sudo chown _www /var/www/photo-stream/data
sudo chmod 777 /var/www/photo-stream/cache
sudo chmod 777 /var/www/photo-stream/data
Lastly, you'll need to create a new virtual host (or update an existing one) on your web server to serve the Photo Stream application.
For example, if you're using Nginx, you can create a new virtual host by creating a file at /etc/nginx/sites-available/photo-stream
with the following content:
server {
listen 80;
server_name example.com;
root /var/www/photo-stream/public;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Make sure to replace example.com
with your own domain name. Once you have saved the file, enable the virtual host by creating a symbolic link:
sudo ln -s /etc/nginx/sites-available/photo-stream /etc/nginx/sites-enabled/photo-stream
Reload Nginx to apply the changes:
sudo service nginx reload
And with that, you have successfully installed Photo Stream on OpenBSD! You should now be able to access your Photo Stream installation by visiting the URL specified in your config.php
file.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!