neon_arch commited on
Commit
b042eb3
2 Parent(s): 30b187a 09bb54e

Merge pull request #15 from neon-mmd/docker-support

Browse files

Add support for hosting the server using docker containers

.dockerignore ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ target/
2
+ .git/
3
+ .github/
4
+ .dockerignore
5
+ Dockerfile
6
+ docker-compose.yml
7
+ images
8
+ *.md
9
+ LICENSE
Cargo.lock CHANGED
@@ -87,7 +87,7 @@ version = "0.2.3"
87
  source = "registry+https://github.com/rust-lang/crates.io-index"
88
  checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6"
89
  dependencies = [
90
- "quote 1.0.26",
91
  "syn 1.0.109",
92
  ]
93
 
@@ -190,7 +190,7 @@ dependencies = [
190
  "serde_urlencoded 0.7.1",
191
  "smallvec 1.10.0",
192
  "socket2",
193
- "time 0.3.20",
194
  "url 2.3.1",
195
  ]
196
 
@@ -202,7 +202,7 @@ checksum = "2262160a7ae29e3415554a3f1fc04c764b1540c116aa524683208078b7a75bc9"
202
  dependencies = [
203
  "actix-router",
204
  "proc-macro2 1.0.56",
205
- "quote 1.0.26",
206
  "syn 1.0.109",
207
  ]
208
 
@@ -480,7 +480,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
480
  checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb"
481
  dependencies = [
482
  "percent-encoding 2.2.0",
483
- "time 0.3.20",
484
  "version_check",
485
  ]
486
 
@@ -606,7 +606,7 @@ dependencies = [
606
  "matches",
607
  "phf 0.10.1",
608
  "proc-macro2 1.0.56",
609
- "quote 1.0.26",
610
  "smallvec 1.10.0",
611
  "syn 1.0.109",
612
  ]
@@ -617,7 +617,7 @@ version = "0.6.0"
617
  source = "registry+https://github.com/rust-lang/crates.io-index"
618
  checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e"
619
  dependencies = [
620
- "quote 1.0.26",
621
  "syn 1.0.109",
622
  ]
623
 
@@ -629,7 +629,7 @@ checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
629
  dependencies = [
630
  "convert_case",
631
  "proc-macro2 1.0.56",
632
- "quote 1.0.26",
633
  "rustc_version 0.4.0",
634
  "syn 1.0.109",
635
  ]
@@ -731,7 +731,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
731
  checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
732
  dependencies = [
733
  "proc-macro2 1.0.56",
734
- "quote 1.0.26",
735
  "syn 1.0.109",
736
  "synstructure",
737
  ]
@@ -1036,7 +1036,7 @@ dependencies = [
1036
  "mac",
1037
  "markup5ever 0.11.0",
1038
  "proc-macro2 1.0.56",
1039
- "quote 1.0.26",
1040
  "syn 1.0.109",
1041
  ]
1042
 
@@ -1301,9 +1301,9 @@ dependencies = [
1301
 
1302
  [[package]]
1303
  name = "js-sys"
1304
- version = "0.3.61"
1305
  source = "registry+https://github.com/rust-lang/crates.io-index"
1306
- checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730"
1307
  dependencies = [
1308
  "wasm-bindgen",
1309
  ]
@@ -1332,15 +1332,15 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
1332
 
1333
  [[package]]
1334
  name = "libc"
1335
- version = "0.2.142"
1336
  source = "registry+https://github.com/rust-lang/crates.io-index"
1337
- checksum = "6a987beff54b60ffa6d51982e1aa1146bc42f19bd26be28b0586f252fccf5317"
1338
 
1339
  [[package]]
1340
  name = "linux-raw-sys"
1341
- version = "0.3.6"
1342
  source = "registry+https://github.com/rust-lang/crates.io-index"
1343
- checksum = "b64f40e5e03e0d54f03845c8197d0291253cdbedfb1cb46b13c2c117554a9f4c"
1344
 
1345
  [[package]]
1346
  name = "local-channel"
@@ -1632,7 +1632,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
1632
  checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
1633
  dependencies = [
1634
  "proc-macro2 1.0.56",
1635
- "quote 1.0.26",
1636
  "syn 2.0.15",
1637
  ]
1638
 
@@ -1750,7 +1750,7 @@ dependencies = [
1750
  "pest",
1751
  "pest_meta",
1752
  "proc-macro2 1.0.56",
1753
- "quote 1.0.26",
1754
  "syn 2.0.15",
1755
  ]
1756
 
@@ -1864,7 +1864,7 @@ dependencies = [
1864
  "phf_shared 0.10.0",
1865
  "proc-macro-hack",
1866
  "proc-macro2 1.0.56",
1867
- "quote 1.0.26",
1868
  "syn 1.0.109",
1869
  ]
1870
 
@@ -1909,9 +1909,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
1909
 
1910
  [[package]]
1911
  name = "pkg-config"
1912
- version = "0.3.26"
1913
  source = "registry+https://github.com/rust-lang/crates.io-index"
1914
- checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
1915
 
1916
  [[package]]
1917
  name = "ppv-lite86"
@@ -1970,9 +1970,9 @@ dependencies = [
1970
 
1971
  [[package]]
1972
  name = "quote"
1973
- version = "1.0.26"
1974
  source = "registry+https://github.com/rust-lang/crates.io-index"
1975
- checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
1976
  dependencies = [
1977
  "proc-macro2 1.0.56",
1978
  ]
@@ -2314,9 +2314,9 @@ dependencies = [
2314
 
2315
  [[package]]
2316
  name = "rlua-lua54-sys"
2317
- version = "0.1.3"
2318
  source = "registry+https://github.com/rust-lang/crates.io-index"
2319
- checksum = "23ae48797c3e76fb2c205fda8f30e28416a15b9fc1d649cc7cea9ff1fb9cf028"
2320
  dependencies = [
2321
  "cc",
2322
  "libc",
@@ -2349,9 +2349,9 @@ dependencies = [
2349
 
2350
  [[package]]
2351
  name = "rustix"
2352
- version = "0.37.17"
2353
  source = "registry+https://github.com/rust-lang/crates.io-index"
2354
- checksum = "bc809f704c03a812ac71f22456c857be34185cac691a4316f27ab0f633bb9009"
2355
  dependencies = [
2356
  "bitflags",
2357
  "errno",
@@ -2482,21 +2482,21 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
2482
 
2483
  [[package]]
2484
  name = "serde"
2485
- version = "1.0.160"
2486
  source = "registry+https://github.com/rust-lang/crates.io-index"
2487
- checksum = "bb2f3770c8bce3bcda7e149193a069a0f4365bda1fa5cd88e03bca26afc1216c"
2488
  dependencies = [
2489
  "serde_derive",
2490
  ]
2491
 
2492
  [[package]]
2493
  name = "serde_derive"
2494
- version = "1.0.160"
2495
  source = "registry+https://github.com/rust-lang/crates.io-index"
2496
- checksum = "291a097c63d8497e00160b166a967a4a79c64f3facdd01cbd7502231688d77df"
2497
  dependencies = [
2498
  "proc-macro2 1.0.56",
2499
- "quote 1.0.26",
2500
  "syn 2.0.15",
2501
  ]
2502
 
@@ -2681,7 +2681,7 @@ dependencies = [
2681
  "phf_generator 0.7.24",
2682
  "phf_shared 0.7.24",
2683
  "proc-macro2 1.0.56",
2684
- "quote 1.0.26",
2685
  "string_cache_shared",
2686
  ]
2687
 
@@ -2694,7 +2694,7 @@ dependencies = [
2694
  "phf_generator 0.10.0",
2695
  "phf_shared 0.10.0",
2696
  "proc-macro2 1.0.56",
2697
- "quote 1.0.26",
2698
  ]
2699
 
2700
  [[package]]
@@ -2721,7 +2721,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2721
  checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2722
  dependencies = [
2723
  "proc-macro2 1.0.56",
2724
- "quote 1.0.26",
2725
  "unicode-ident",
2726
  ]
2727
 
@@ -2732,7 +2732,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2732
  checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
2733
  dependencies = [
2734
  "proc-macro2 1.0.56",
2735
- "quote 1.0.26",
2736
  "unicode-ident",
2737
  ]
2738
 
@@ -2743,7 +2743,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2743
  checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
2744
  dependencies = [
2745
  "proc-macro2 1.0.56",
2746
- "quote 1.0.26",
2747
  "syn 1.0.109",
2748
  "unicode-xid 0.2.4",
2749
  ]
@@ -2797,7 +2797,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2797
  checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
2798
  dependencies = [
2799
  "proc-macro2 1.0.56",
2800
- "quote 1.0.26",
2801
  "syn 2.0.15",
2802
  ]
2803
 
@@ -2814,9 +2814,9 @@ dependencies = [
2814
 
2815
  [[package]]
2816
  name = "time"
2817
- version = "0.3.20"
2818
  source = "registry+https://github.com/rust-lang/crates.io-index"
2819
- checksum = "cd0cbfecb4d19b5ea75bb31ad904eb5b9fa13f21079c3b92017ebdf4999a5890"
2820
  dependencies = [
2821
  "itoa 1.0.6",
2822
  "serde",
@@ -2826,15 +2826,15 @@ dependencies = [
2826
 
2827
  [[package]]
2828
  name = "time-core"
2829
- version = "0.1.0"
2830
  source = "registry+https://github.com/rust-lang/crates.io-index"
2831
- checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd"
2832
 
2833
  [[package]]
2834
  name = "time-macros"
2835
- version = "0.2.8"
2836
  source = "registry+https://github.com/rust-lang/crates.io-index"
2837
- checksum = "fd80a657e71da814b8e5d60d3374fc6d35045062245d80224748ae522dd76f36"
2838
  dependencies = [
2839
  "time-core",
2840
  ]
@@ -2941,7 +2941,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
2941
  checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
2942
  dependencies = [
2943
  "proc-macro2 1.0.56",
2944
- "quote 1.0.26",
2945
  "syn 2.0.15",
2946
  ]
2947
 
@@ -3243,9 +3243,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
3243
 
3244
  [[package]]
3245
  name = "wasm-bindgen"
3246
- version = "0.2.84"
3247
  source = "registry+https://github.com/rust-lang/crates.io-index"
3248
- checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b"
3249
  dependencies = [
3250
  "cfg-if 1.0.0",
3251
  "wasm-bindgen-macro",
@@ -3253,24 +3253,24 @@ dependencies = [
3253
 
3254
  [[package]]
3255
  name = "wasm-bindgen-backend"
3256
- version = "0.2.84"
3257
  source = "registry+https://github.com/rust-lang/crates.io-index"
3258
- checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9"
3259
  dependencies = [
3260
  "bumpalo",
3261
  "log",
3262
  "once_cell",
3263
  "proc-macro2 1.0.56",
3264
- "quote 1.0.26",
3265
- "syn 1.0.109",
3266
  "wasm-bindgen-shared",
3267
  ]
3268
 
3269
  [[package]]
3270
  name = "wasm-bindgen-futures"
3271
- version = "0.4.34"
3272
  source = "registry+https://github.com/rust-lang/crates.io-index"
3273
- checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454"
3274
  dependencies = [
3275
  "cfg-if 1.0.0",
3276
  "js-sys",
@@ -3280,38 +3280,38 @@ dependencies = [
3280
 
3281
  [[package]]
3282
  name = "wasm-bindgen-macro"
3283
- version = "0.2.84"
3284
  source = "registry+https://github.com/rust-lang/crates.io-index"
3285
- checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5"
3286
  dependencies = [
3287
- "quote 1.0.26",
3288
  "wasm-bindgen-macro-support",
3289
  ]
3290
 
3291
  [[package]]
3292
  name = "wasm-bindgen-macro-support"
3293
- version = "0.2.84"
3294
  source = "registry+https://github.com/rust-lang/crates.io-index"
3295
- checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6"
3296
  dependencies = [
3297
  "proc-macro2 1.0.56",
3298
- "quote 1.0.26",
3299
- "syn 1.0.109",
3300
  "wasm-bindgen-backend",
3301
  "wasm-bindgen-shared",
3302
  ]
3303
 
3304
  [[package]]
3305
  name = "wasm-bindgen-shared"
3306
- version = "0.2.84"
3307
  source = "registry+https://github.com/rust-lang/crates.io-index"
3308
- checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
3309
 
3310
  [[package]]
3311
  name = "web-sys"
3312
- version = "0.3.61"
3313
  source = "registry+https://github.com/rust-lang/crates.io-index"
3314
- checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97"
3315
  dependencies = [
3316
  "js-sys",
3317
  "wasm-bindgen",
@@ -3328,7 +3328,7 @@ dependencies = [
3328
  "handlebars",
3329
  "log",
3330
  "md5",
3331
- "rand 0.6.5",
3332
  "redis",
3333
  "reqwest 0.11.17",
3334
  "rlua",
 
87
  source = "registry+https://github.com/rust-lang/crates.io-index"
88
  checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6"
89
  dependencies = [
90
+ "quote 1.0.27",
91
  "syn 1.0.109",
92
  ]
93
 
 
190
  "serde_urlencoded 0.7.1",
191
  "smallvec 1.10.0",
192
  "socket2",
193
+ "time 0.3.21",
194
  "url 2.3.1",
195
  ]
196
 
 
202
  dependencies = [
203
  "actix-router",
204
  "proc-macro2 1.0.56",
205
+ "quote 1.0.27",
206
  "syn 1.0.109",
207
  ]
208
 
 
480
  checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb"
481
  dependencies = [
482
  "percent-encoding 2.2.0",
483
+ "time 0.3.21",
484
  "version_check",
485
  ]
486
 
 
606
  "matches",
607
  "phf 0.10.1",
608
  "proc-macro2 1.0.56",
609
+ "quote 1.0.27",
610
  "smallvec 1.10.0",
611
  "syn 1.0.109",
612
  ]
 
617
  source = "registry+https://github.com/rust-lang/crates.io-index"
618
  checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e"
619
  dependencies = [
620
+ "quote 1.0.27",
621
  "syn 1.0.109",
622
  ]
623
 
 
629
  dependencies = [
630
  "convert_case",
631
  "proc-macro2 1.0.56",
632
+ "quote 1.0.27",
633
  "rustc_version 0.4.0",
634
  "syn 1.0.109",
635
  ]
 
731
  checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
732
  dependencies = [
733
  "proc-macro2 1.0.56",
734
+ "quote 1.0.27",
735
  "syn 1.0.109",
736
  "synstructure",
737
  ]
 
1036
  "mac",
1037
  "markup5ever 0.11.0",
1038
  "proc-macro2 1.0.56",
1039
+ "quote 1.0.27",
1040
  "syn 1.0.109",
1041
  ]
1042
 
 
1301
 
1302
  [[package]]
1303
  name = "js-sys"
1304
+ version = "0.3.62"
1305
  source = "registry+https://github.com/rust-lang/crates.io-index"
1306
+ checksum = "68c16e1bfd491478ab155fd8b4896b86f9ede344949b641e61501e07c2b8b4d5"
1307
  dependencies = [
1308
  "wasm-bindgen",
1309
  ]
 
1332
 
1333
  [[package]]
1334
  name = "libc"
1335
+ version = "0.2.144"
1336
  source = "registry+https://github.com/rust-lang/crates.io-index"
1337
+ checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1"
1338
 
1339
  [[package]]
1340
  name = "linux-raw-sys"
1341
+ version = "0.3.7"
1342
  source = "registry+https://github.com/rust-lang/crates.io-index"
1343
+ checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f"
1344
 
1345
  [[package]]
1346
  name = "local-channel"
 
1632
  checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
1633
  dependencies = [
1634
  "proc-macro2 1.0.56",
1635
+ "quote 1.0.27",
1636
  "syn 2.0.15",
1637
  ]
1638
 
 
1750
  "pest",
1751
  "pest_meta",
1752
  "proc-macro2 1.0.56",
1753
+ "quote 1.0.27",
1754
  "syn 2.0.15",
1755
  ]
1756
 
 
1864
  "phf_shared 0.10.0",
1865
  "proc-macro-hack",
1866
  "proc-macro2 1.0.56",
1867
+ "quote 1.0.27",
1868
  "syn 1.0.109",
1869
  ]
1870
 
 
1909
 
1910
  [[package]]
1911
  name = "pkg-config"
1912
+ version = "0.3.27"
1913
  source = "registry+https://github.com/rust-lang/crates.io-index"
1914
+ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
1915
 
1916
  [[package]]
1917
  name = "ppv-lite86"
 
1970
 
1971
  [[package]]
1972
  name = "quote"
1973
+ version = "1.0.27"
1974
  source = "registry+https://github.com/rust-lang/crates.io-index"
1975
+ checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500"
1976
  dependencies = [
1977
  "proc-macro2 1.0.56",
1978
  ]
 
2314
 
2315
  [[package]]
2316
  name = "rlua-lua54-sys"
2317
+ version = "0.1.4"
2318
  source = "registry+https://github.com/rust-lang/crates.io-index"
2319
+ checksum = "93f42202b5aeb0bcc5df28436f8d963f8cbcbb898033a9e28c7ba4f299707934"
2320
  dependencies = [
2321
  "cc",
2322
  "libc",
 
2349
 
2350
  [[package]]
2351
  name = "rustix"
2352
+ version = "0.37.19"
2353
  source = "registry+https://github.com/rust-lang/crates.io-index"
2354
+ checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d"
2355
  dependencies = [
2356
  "bitflags",
2357
  "errno",
 
2482
 
2483
  [[package]]
2484
  name = "serde"
2485
+ version = "1.0.162"
2486
  source = "registry+https://github.com/rust-lang/crates.io-index"
2487
+ checksum = "71b2f6e1ab5c2b98c05f0f35b236b22e8df7ead6ffbf51d7808da7f8817e7ab6"
2488
  dependencies = [
2489
  "serde_derive",
2490
  ]
2491
 
2492
  [[package]]
2493
  name = "serde_derive"
2494
+ version = "1.0.162"
2495
  source = "registry+https://github.com/rust-lang/crates.io-index"
2496
+ checksum = "a2a0814352fd64b58489904a44ea8d90cb1a91dcb6b4f5ebabc32c8318e93cb6"
2497
  dependencies = [
2498
  "proc-macro2 1.0.56",
2499
+ "quote 1.0.27",
2500
  "syn 2.0.15",
2501
  ]
2502
 
 
2681
  "phf_generator 0.7.24",
2682
  "phf_shared 0.7.24",
2683
  "proc-macro2 1.0.56",
2684
+ "quote 1.0.27",
2685
  "string_cache_shared",
2686
  ]
2687
 
 
2694
  "phf_generator 0.10.0",
2695
  "phf_shared 0.10.0",
2696
  "proc-macro2 1.0.56",
2697
+ "quote 1.0.27",
2698
  ]
2699
 
2700
  [[package]]
 
2721
  checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2722
  dependencies = [
2723
  "proc-macro2 1.0.56",
2724
+ "quote 1.0.27",
2725
  "unicode-ident",
2726
  ]
2727
 
 
2732
  checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
2733
  dependencies = [
2734
  "proc-macro2 1.0.56",
2735
+ "quote 1.0.27",
2736
  "unicode-ident",
2737
  ]
2738
 
 
2743
  checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
2744
  dependencies = [
2745
  "proc-macro2 1.0.56",
2746
+ "quote 1.0.27",
2747
  "syn 1.0.109",
2748
  "unicode-xid 0.2.4",
2749
  ]
 
2797
  checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
2798
  dependencies = [
2799
  "proc-macro2 1.0.56",
2800
+ "quote 1.0.27",
2801
  "syn 2.0.15",
2802
  ]
2803
 
 
2814
 
2815
  [[package]]
2816
  name = "time"
2817
+ version = "0.3.21"
2818
  source = "registry+https://github.com/rust-lang/crates.io-index"
2819
+ checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc"
2820
  dependencies = [
2821
  "itoa 1.0.6",
2822
  "serde",
 
2826
 
2827
  [[package]]
2828
  name = "time-core"
2829
+ version = "0.1.1"
2830
  source = "registry+https://github.com/rust-lang/crates.io-index"
2831
+ checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
2832
 
2833
  [[package]]
2834
  name = "time-macros"
2835
+ version = "0.2.9"
2836
  source = "registry+https://github.com/rust-lang/crates.io-index"
2837
+ checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b"
2838
  dependencies = [
2839
  "time-core",
2840
  ]
 
2941
  checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
2942
  dependencies = [
2943
  "proc-macro2 1.0.56",
2944
+ "quote 1.0.27",
2945
  "syn 2.0.15",
2946
  ]
2947
 
 
3243
 
3244
  [[package]]
3245
  name = "wasm-bindgen"
3246
+ version = "0.2.85"
3247
  source = "registry+https://github.com/rust-lang/crates.io-index"
3248
+ checksum = "5b6cb788c4e39112fbe1822277ef6fb3c55cd86b95cb3d3c4c1c9597e4ac74b4"
3249
  dependencies = [
3250
  "cfg-if 1.0.0",
3251
  "wasm-bindgen-macro",
 
3253
 
3254
  [[package]]
3255
  name = "wasm-bindgen-backend"
3256
+ version = "0.2.85"
3257
  source = "registry+https://github.com/rust-lang/crates.io-index"
3258
+ checksum = "35e522ed4105a9d626d885b35d62501b30d9666283a5c8be12c14a8bdafe7822"
3259
  dependencies = [
3260
  "bumpalo",
3261
  "log",
3262
  "once_cell",
3263
  "proc-macro2 1.0.56",
3264
+ "quote 1.0.27",
3265
+ "syn 2.0.15",
3266
  "wasm-bindgen-shared",
3267
  ]
3268
 
3269
  [[package]]
3270
  name = "wasm-bindgen-futures"
3271
+ version = "0.4.35"
3272
  source = "registry+https://github.com/rust-lang/crates.io-index"
3273
+ checksum = "083abe15c5d88556b77bdf7aef403625be9e327ad37c62c4e4129af740168163"
3274
  dependencies = [
3275
  "cfg-if 1.0.0",
3276
  "js-sys",
 
3280
 
3281
  [[package]]
3282
  name = "wasm-bindgen-macro"
3283
+ version = "0.2.85"
3284
  source = "registry+https://github.com/rust-lang/crates.io-index"
3285
+ checksum = "358a79a0cb89d21db8120cbfb91392335913e4890665b1a7981d9e956903b434"
3286
  dependencies = [
3287
+ "quote 1.0.27",
3288
  "wasm-bindgen-macro-support",
3289
  ]
3290
 
3291
  [[package]]
3292
  name = "wasm-bindgen-macro-support"
3293
+ version = "0.2.85"
3294
  source = "registry+https://github.com/rust-lang/crates.io-index"
3295
+ checksum = "4783ce29f09b9d93134d41297aded3a712b7b979e9c6f28c32cb88c973a94869"
3296
  dependencies = [
3297
  "proc-macro2 1.0.56",
3298
+ "quote 1.0.27",
3299
+ "syn 2.0.15",
3300
  "wasm-bindgen-backend",
3301
  "wasm-bindgen-shared",
3302
  ]
3303
 
3304
  [[package]]
3305
  name = "wasm-bindgen-shared"
3306
+ version = "0.2.85"
3307
  source = "registry+https://github.com/rust-lang/crates.io-index"
3308
+ checksum = "a901d592cafaa4d711bc324edfaff879ac700b19c3dfd60058d2b445be2691eb"
3309
 
3310
  [[package]]
3311
  name = "web-sys"
3312
+ version = "0.3.62"
3313
  source = "registry+https://github.com/rust-lang/crates.io-index"
3314
+ checksum = "16b5f940c7edfdc6d12126d98c9ef4d1b3d470011c47c76a6581df47ad9ba721"
3315
  dependencies = [
3316
  "js-sys",
3317
  "wasm-bindgen",
 
3328
  "handlebars",
3329
  "log",
3330
  "md5",
3331
+ "rand 0.8.5",
3332
  "redis",
3333
  "reqwest 0.11.17",
3334
  "rlua",
Dockerfile ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM rust:latest AS chef
2
+ # We only pay the installation cost once,
3
+ # it will be cached from the second build onwards
4
+ RUN cargo install cargo-chef
5
+
6
+ WORKDIR app
7
+
8
+ FROM chef AS planner
9
+ COPY . .
10
+ RUN cargo chef prepare --recipe-path recipe.json
11
+
12
+ FROM chef AS builder
13
+ COPY --from=planner /app/recipe.json recipe.json
14
+ # Build dependencies - this is the caching Docker layer!
15
+ RUN cargo chef cook --release --recipe-path recipe.json
16
+
17
+ # Build application
18
+ COPY . .
19
+ RUN cargo install --path .
20
+
21
+ # We do not need the Rust toolchain to run the binary!
22
+ FROM gcr.io/distroless/cc-debian11
23
+ COPY --from=builder ./public/ ./public/
24
+ COPY --from=builder ./websurfx/ ./websurfx/
25
+ COPY --from=builder /usr/local/cargo/bin/* /usr/local/bin/
26
+ CMD ["websurfx"]
docker-compose.yml ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.9"
2
+ services:
3
+ app:
4
+ image: websurfx:latest
5
+ build: .
6
+ ports:
7
+ - 8080:8080
8
+ depends_on:
9
+ - redis
10
+ links:
11
+ - redis
12
+ redis:
13
+ image: redis:latest
14
+ ports:
15
+ - 6379:6379
src/search_results_handler/aggregator.rs CHANGED
@@ -44,7 +44,7 @@ pub async fn aggregate(
44
 
45
  // Add a random delay before making the request.
46
  let mut rng = rand::thread_rng();
47
- let delay_secs = rng.gen_range(1, 10);
48
  std::thread::sleep(Duration::from_secs(delay_secs));
49
 
50
  // fetch results from upstream search engines simultaneously/concurrently.
 
44
 
45
  // Add a random delay before making the request.
46
  let mut rng = rand::thread_rng();
47
+ let delay_secs = rng.gen_range(1..10);
48
  std::thread::sleep(Duration::from_secs(delay_secs));
49
 
50
  // fetch results from upstream search engines simultaneously/concurrently.