A one click install application for file sharing.
Setup a full stack file sharing application on the platform of your choice.
Note: Project is still in development and all the features are not ready yet.
You'll need the following softwares to get started with development.
- Clojure
- Leiningen
- Postgres
mkdir <path to file upload>
- update config.edn in resources with
lein deps
cp resources/database.sample.edn resources/database.edn
and replace configlein migrate
to setup database
Run start-dev-server
in core.clj
to start an auto reload development server
lein test
- Java
- Clojure
- Leiningen
- Postgres
Add systemd services for both staging and production environement using the following script and place it in /etc/systemd/system
and name the file receive.staging.service
[Unit]
Description=Receive API
[Service]
Environment=NOMAD_INSTANCE=PROD
Environment=PORT=3000
Type=simple
ExecStart=/usr/bin/java -jar receive.jar
Restart=always
User=root
WorkingDirectory=/opt/staging/receive/target
[Install]
WantedBy=mutli-user.target
Run the following commands to start the service and enable auto restart
sudo systemctl start receive.staging.service
sudo systemctl enable receive.staging.service
For nginx add the following server block to forward the request to the service
server {
listen 80;
listen [::]:80;
server_name receive-staging.nilenso.com;
location / {
proxy_pass http://localhost:3000;
}
}
Save the database config in /opt/database.staging.edn
. Sample config can be found in resources/database.sample.edn
Repeat the same processs for the production setup.
Copyright © 2020 Nilenso
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which is available at http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version, with the GNU Classpath Exception which is available at https://www.gnu.org/software/classpath/license.html.