imagehost is an online Image Hosting platform build using Laravel Framework.
- PHP 5.6.4+ (7.0 preferred)
- PHP Extensions: openssl, mcrypt and mbstring, phpredis
- Database server: MySQL or MariaDB
- Redis Server
- Composer
- Node.js with npm
- clone the repository:
git clone https://github.com/bhutanio/imagehost.git imagehost
- create a database
- create configuration env file
.env
refer to.env.example
- install:
composer install --no-dev
- setup database tables:
php artisan migrate
There are 3 locations you can configure using APP_STORAGE option in the .env file
APP_STORAGE=local
: store image only in your local storageAPP_STORAGE=localcloud
: store image in the cloud and keep a local cacheAPP_STORAGE=cloud
: store image only in the cloud
php artisan tinker
DB::table('users')->where('id', 2)->update(['email'=>'[email protected]']);
Click on forgot password link on the login page and reset password for your admin user.
crontab -e -u www-data
* * * * * php /home/web/imagehost/artisan schedule:run >/dev/null 2>&1
*/5 * * * * php /home/web/imagehost/artisan auth:clear-resets >/dev/null 2>&1
nano /etc/supervisor/conf.d/imagehost.conf
[program:imagehost-queue]
process_name=%(program_name)s_%(process_num)02d
command=php /home/web/imagehost/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=www-data
numprocs=2
Visit https://www.google.com/recaptcha/admin and register your site
Get Site key and Secret key, add them in your .env file
...
## Secret Key
API_GOOGLE_RECAPTCHA='SECRET KEY'
## Site Key
API_GOOGLE_RECAPTCHA_CLIENT='SITE KEY'
...
imagehost is open source software licensed under the MIT license.