annotate README.md @ 322:2235aa625af0

Add memcached and nginx config to readme.
author edogawaconan <me@myconan.net>
date Sun, 06 Apr 2014 03:42:02 +0900
parents d6e94d7d0325
children a0166874e31e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
276
42e70577c962 Code climate yay.
edogawaconan <me@myconan.net>
parents: 256
diff changeset
1 [![Code Climate](https://codeclimate.com/github/edogawaconan/zeropaste.png)](https://codeclimate.com/github/edogawaconan/zeropaste)
299
d6e94d7d0325 Such test. Much build status. Wow
edogawaconan <me@myconan.net>
parents: 276
diff changeset
2 [![Build Status](https://drone.io/bitbucket.org/edogawaconan/zeropaste/status.png)](https://drone.io/bitbucket.org/edogawaconan/zeropaste/latest)
276
42e70577c962 Code climate yay.
edogawaconan <me@myconan.net>
parents: 256
diff changeset
3
36
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
4 Zeropaste
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
5 =========
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
6
203
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
7 A pastebin with some features: create and destroy (with key) pastes.
62
de8da13eb7a6 Added link to running website in readme.
Edho Arief <edho@myconan.net>
parents: 36
diff changeset
8 The one running on [0paste.com](http://0paste.com).
36
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
9
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
10 Requirements:
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
11
203
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
12 * Ruby 1.9 or up (JRuby 1.7 and Rubinius 2.0 should also work)
256
0b5f83d99c54 Update README to reflect database change.
edogawaconan <me@myconan.net>
parents: 228
diff changeset
13 * PostgreSQL
0b5f83d99c54 Update README to reflect database change.
edogawaconan <me@myconan.net>
parents: 228
diff changeset
14 (nothing PostgreSQL specific - can be easily changed if you know what you're doing.
0b5f83d99c54 Update README to reflect database change.
edogawaconan <me@myconan.net>
parents: 228
diff changeset
15 May or may not work with MySQL)
36
bf0d09d7cd7b Actual readme.
Edho Arief <edho@myconan.net>
parents:
diff changeset
16 * Ruby Bundler
63
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
17
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
18 Optional:
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
19
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
20 * Newrelic account
322
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
21 * memcached
63
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
22
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
23 Suggested:
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
24
599a9320b6a3 Spiced up the readme a bit.
Edho Arief <edho@myconan.net>
parents: 62
diff changeset
25 * nginx
72
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
26
203
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
27 Installation
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
28 ------------
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
29
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
30 Left as an exercise.
de168fde2df2 Updated README.
Edho Arief <edho@myconan.net>
parents: 102
diff changeset
31
322
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
32 nginx configuration
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
33 -------------------
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
34
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
35 Here's nginx configuration snippet which use memcached to completely bypass Rails.
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
36
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
37 server {
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
38 server_name 0paste.com;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
39 listen 80; listen [::]:80;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
40 root /var/www/0paste.com/public;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
41 error_page 445 = @zp;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
42 error_page 404 /404.html;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
43
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
44 if ($request_method = POST) {
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
45 return 445;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
46 }
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
47
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
48 location / {
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
49 expires max;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
50 try_files $uri @zp;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
51 }
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
52
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
53 location ~ /(\d+(?:-\x+)?)(?:(\.txt)|\.html)?$ {
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
54 expires max;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
55 charset utf-8;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
56 set $memcached_key "zeropaste:pastes:$1$2";
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
57 memcached_pass localhost:11211;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
58
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
59 default_type text/html;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
60 error_page 404 502 = @zp;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
61 }
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
62
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
63 location @zp {
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
64 proxy_pass http://localhost:9200;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
65 proxy_set_header X-Forwarded-For $remote_addr;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
66 proxy_set_header Host $host;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
67 proxy_intercept_errors on;
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
68 }
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
69 }
2235aa625af0 Add memcached and nginx config to readme.
edogawaconan <me@myconan.net>
parents: 299
diff changeset
70
72
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
71 Misc
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
72 ----
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
73
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
74 Pasting from CLI:
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
75
f43b4d5400ac Added documentation how to post from CLI.
Edho Arief <edho@myconan.net>
parents: 63
diff changeset
76 ...some commands... | curl 'http://0paste.com/pastes.txt' -F 'paste[paste]=<-'
89
de4ce9ce1cc1 Added documentation on posting with gzip.
Edho Arief <edho@myconan.net>
parents: 72
diff changeset
77
de4ce9ce1cc1 Added documentation on posting with gzip.
Edho Arief <edho@myconan.net>
parents: 72
diff changeset
78 Or with gzip to save bandwidth:
de4ce9ce1cc1 Added documentation on posting with gzip.
Edho Arief <edho@myconan.net>
parents: 72
diff changeset
79
227
c2a76a901e61 No need to base64.
Edho Arief <edho@myconan.net>
parents: 203
diff changeset
80 ...some commands... | gzip | curl 'http://0paste.com/pastes.txt' -F 'paste[paste_gzip]=<-'
102
7a514c733e6c A note about current design.
Edho Arief <edho@myconan.net>
parents: 89
diff changeset
81
228
4a79bc78e90e Hint for private paste curl
Edho Arief <edho@myconan.net>
parents: 227
diff changeset
82 Privately:
4a79bc78e90e Hint for private paste curl
Edho Arief <edho@myconan.net>
parents: 227
diff changeset
83
4a79bc78e90e Hint for private paste curl
Edho Arief <edho@myconan.net>
parents: 227
diff changeset
84 ...some commands... | gzip | curl 'http://0paste.com/pastes.txt' -F 'paste[is_private]=1' -F 'paste[paste_gzip]=<-'
4a79bc78e90e Hint for private paste curl
Edho Arief <edho@myconan.net>
parents: 227
diff changeset
85
102
7a514c733e6c A note about current design.
Edho Arief <edho@myconan.net>
parents: 89
diff changeset
86 Design
7a514c733e6c A note about current design.
Edho Arief <edho@myconan.net>
parents: 89
diff changeset
87 ------
7a514c733e6c A note about current design.
Edho Arief <edho@myconan.net>
parents: 89
diff changeset
88
7a514c733e6c A note about current design.
Edho Arief <edho@myconan.net>
parents: 89
diff changeset
89 Current design is a bit crap. Suggestions and actual designs are welcome.