1
|
1 # README #
|
|
2
|
|
3 Orthanc object-storages plugin for main cloud providers (Google/Azure/AWS)
|
|
4
|
4
|
5 Check the [Orthanc book](https://book.orthanc-server.com/plugins/object-storage.html) for complete documentation.
|
1
|
6
|
5
|
7 ## info for developers ##
|
|
8
|
|
9 Here's a sample configuration file of the `StorageEncryption` section of the plugins:
|
|
10
|
|
11 ```
|
|
12 {
|
|
13 "StorageEncryption" : {
|
|
14 "Enable": true,
|
|
15 "MasterKey": [3, "/path/to/master.key"], // key id - path to the base64 encoded key
|
|
16 "PreviousMasterKeys" : [
|
|
17 [ 1, "/path/to/previous1.key"],
|
|
18 [ 2, "/path/to/previous2.key"]
|
|
19 ],
|
|
20 "MaxConcurrentInputSize" : 1024 // size in MB
|
|
21 }
|
|
22 }
|
|
23 ```
|
|
24
|
|
25 ### Compile Google plugin ###
|
|
26
|
|
27 * `./vcpkg install google-cloud-cpp`
|
|
28 * `./vcpkg install cryptopp`
|
|
29 * `hg clone ...`
|
|
30 * `mkdir -p build/google`
|
|
31 * `cd build/google`
|
|
32 * `cmake -DCMAKE_TOOLCHAIN_FILE=[vcpkg root]\scripts\buildsystems\vcpkg.cmake ../../orthanc-object-storage/google`
|
|
33
|
|
34 ### Google plugin configuration ###
|
|
35
|
|
36 ```
|
|
37 "GoogleCloudStorage" : {
|
|
38 "ServiceAccountFile": "/.../googleServiceAccountFile.json",
|
|
39 "BucketName": "test-orthanc-storage-plugin"
|
|
40 }
|
|
41
|
|
42 ```
|
|
43
|
|
44 ## Azure Blob Storage plugin ##
|
|
45
|
|
46 ### Prerequisites ###
|
|
47
|
|
48 * Install [vcpkg](https://github.com/Microsoft/vcpkg)
|
|
49
|
|
50 ### Compile Azure plugin ###
|
|
51
|
|
52 * `./vcpkg install cpprestsdk`
|
|
53 * `hg clone ...`
|
|
54 * `mkdir -p build/azure`
|
|
55 * `cd build/azure`
|
|
56 * `cmake -DCMAKE_TOOLCHAIN_FILE=[vcpkg root]\scripts\buildsystems\vcpkg.cmake ../../orthanc-object-storage/Azure`
|
|
57
|
|
58 ### Azure plugin configuration ###
|
|
59
|
|
60 ```
|
|
61 "AzureBlobStorage" : {
|
|
62 "ConnectionString": "DefaultEndpointsProtocol=https;AccountName=xxxxxxxxx;AccountKey=yyyyyyyy===;EndpointSuffix=core.windows.net",
|
|
63 "ContainerName" : "test-orthanc-storage-plugin"
|
|
64 }
|
|
65 ```
|
|
66
|
|
67 ## AWS S3 Storage plugin ##
|
|
68
|
|
69 ### Prerequisites ###
|
|
70
|
|
71 * Install [vcpkg](https://github.com/Microsoft/vcpkg)
|
|
72
|
|
73 * compile the AWS C++ SDK
|
|
74
|
|
75 ```
|
|
76
|
|
77 mkdir ~/aws
|
|
78 cd ~/aws
|
|
79 git clone https://github.com/aws/aws-sdk-cpp.git
|
|
80
|
|
81 mkdir -p ~/aws/builds/aws-sdk-cpp
|
|
82 cd ~/aws/builds/aws-sdk-cpp
|
|
83 cmake -DBUILD_ONLY="s3;transfer" ~/aws/aws-sdk-cpp
|
|
84 make -j 4
|
|
85 make install
|
|
86 ```
|
|
87
|
|
88 ### Compile AWS S3 plugin ###
|
|
89
|
|
90 * `./vcpkg install cryptopp`
|
|
91 * `hg clone ...`
|
|
92 * `mkdir -p build/aws`
|
|
93 * `cd build/aws`
|
|
94 * `cmake -DCMAKE_TOOLCHAIN_FILE=[vcpkg root]\scripts\buildsystems\vcpkg.cmake ../../orthanc-object-storage/Aws`
|
|
95
|
|
96 ### Azure plugin configuration ###
|
|
97
|
|
98 ```
|
|
99 "AwsS3Storage" : {
|
|
100 "BucketName": "test-orthanc-s3-plugin",
|
|
101 "Region" : "eu-central-1",
|
|
102 "AccessKey" : "AKXXX",
|
|
103 "SecretKey" : "RhYYYY"
|
|
104 }
|
|
105 ``` |