Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/AnthoDingo/docker-pasteboard
https://github.com/AnthoDingo/docker-pasteboard
Last synced: 14 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/AnthoDingo/docker-pasteboard
- Owner: AnthoDingo
- Created: 2015-10-19T01:08:44.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2015-10-19T15:44:57.000Z (about 9 years ago)
- Last Synced: 2024-08-01T19:46:14.585Z (3 months ago)
- Language: Shell
- Size: 137 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Pasteboard Docker Container
#### ENV Var
This option are optional, this is default value.
##### URL
```
ORIGIN=pasteboard.co
```##### Time sewage
```
MAX=7
```#### Exposition
You can expose the port 4000 on all interface like that :
```
docker run --name pastebaord \
-e ORIGIN=mydomain.tld \
-p 4000:4000 \
anthodingo/docker-pasteboard
```Or you can bind the port 4000 only on loopback (127.0.0.1) like : (more secure)
```
docker run -d --name pastebaord \
-e ORIGIN=mydomain.tld \
-p 127.0.0.1:4000:4000 \
anthodingo/docker-pasteboard
```#### Folder
You can store data and config externaly of container :
```
docker run -d --name pasteboard \
-p 4000:4000 \
-v /srv/pasteboard/images:/pasteboard/public/storage \
anthodingo/docker-pasteboard
```#### Nginx exemple
This exemple work in production :
```
upstream pasteboard {
server 127.0.0.1:4000;
}server {
listen 80;
server_name _;client_max_body_size 10M;
location / {
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-NginX-Proxy true;proxy_pass http://pasteboard/;
proxy_redirect off;
proxy_buffering off;
}
}
```You can change max image size in : client_max_body_size
#### Pasteboard auth
All auth exemple are present on source repo : https://github.com/JoelBesada/pasteboard/tree/master/auth
Exemple for hashing.js :
```javascript
exports.keyHash = function(key) {
var hashedKey;
var crypto = require('crypto');
var shasum = crypto.createHash('sha1');
shasum.update(key);
hashedKey = shasum.digest('hex');
return hashedKey;
};
```##### How to install auth
Write the file on your server and push to container:
```
cat << EOF > /tmp/hashing.js
exports.keyHash = function(key) {
var hashedKey;
var crypto = require('crypto');
var shasum = crypto.createHash('sha1');
shasum.update(key);
hashedKey = shasum.digest('hex');
return hashedKey;
};
EOFdocker cp /tmp/hashing.js pasteboard:/pasteboard/auth/hashing.js
rm /tmp/hashing.js
```#### Why my repo and not official ?
I included all pull request from official repo.
[Official source repo Pasteboard](https://github.com/JoelBesada/pasteboard)
[My repo Pasteboard](https://github.com/Janus-SGN/pasteboard.git)