====== Cantaloupe standalone server update to 4.1 from 4.0.3 ====== * download wget https://github.com/medusa-project/cantaloupe/releases/download/v4.1/cantaloupe-4.1.zip unzip cantaloupe-4.1.zip sudo mv cantaloupe-4.1 /opt/ sudo chown -R cantaloupe:cantaloupe /opt/cantaloupe-4.1 * settings cd /opt/cantaloupe-4.1 sudo cp cantaloupe.properties.sample cantaloupe.properties sudo nano -w cantaloupe.properties diff /opt/cantaloupe-4.0.3/cantaloupe.properties /opt/cantaloupe-4.1/cantaloupe.properties < max_pixels = 400000000 > max_pixels = 100000000 > # Maximum scale to allow (1.0 = full scale; 0 = no maximum). > max_scale = 1.0 < delegate_script.pathname = delegates.rb > delegate_script.pathname = /opt/cantaloupe-4.1/delegates.rb < endpoint.iiif.min_tile_size = 1024 > endpoint.iiif.min_tile_size = 512 < HttpSource.trust_all_certs = true > HttpSource.allow_insecure = true < processor.avi = FfmpegProcessor < processor.bmp = < processor.dcm = ImageMagickProcessor < processor.flv = FfmpegProcessor < processor.gif = < processor.jp2 = KakaduNativeProcessor < processor.jpg = < processor.mov = FfmpegProcessor < processor.mp4 = FfmpegProcessor < processor.mpg = FfmpegProcessor < processor.pdf = PdfBoxProcessor < processor.png = < processor.tif = JaiProcessor < processor.webm = FfmpegProcessor < processor.webp = ImageMagickProcessor > processor.selection_strategy = ManualSelectionStrategy > processor.ManualSelectionStrategy.avi = FfmpegProcessor > processor.ManualSelectionStrategy.bmp = > processor.ManualSelectionStrategy.dcm = ImageMagickProcessor > processor.ManualSelectionStrategy.flv = FfmpegProcessor > processor.ManualSelectionStrategy.gif = > processor.ManualSelectionStrategy.jp2 = KakaduNativeProcessor > processor.ManualSelectionStrategy.jpg = > processor.ManualSelectionStrategy.mov = FfmpegProcessor > processor.ManualSelectionStrategy.mp4 = FfmpegProcessor > processor.ManualSelectionStrategy.mpg = FfmpegProcessor > processor.ManualSelectionStrategy.pdf = PdfBoxProcessor > processor.ManualSelectionStrategy.png = > processor.ManualSelectionStrategy.tif = > processor.ManualSelectionStrategy.webm = FfmpegProcessor > processor.ManualSelectionStrategy.webp = ImageMagickProcessor < processor.fallback = Java2dProcessor > processor.ManualSelectionStrategy.fallback = Java2dProcessor < processor.normalize = false > diff /opt/cantaloupe-4.1/cantaloupe.properties.sample /opt/cantaloupe-4.1/cantaloupe.properties 14c14 < temp_pathname = --- > temp_pathname = /srv/tmp 18c18 < http.host = 0.0.0.0 --- > http.host = 123.123.123.123 67c67 < delegate_script.enabled = false --- > delegate_script.enabled = true 72c72 < delegate_script.pathname = delegates.rb --- > delegate_script.pathname = /opt/cantaloupe-4.1/delegates.rb 105,107c105,107 < endpoint.admin.enabled = false < endpoint.admin.username = admin < endpoint.admin.secret = --- > endpoint.admin.enabled = true > endpoint.admin.username = myUserName > endpoint.admin.secret = myPassword 110c110 < endpoint.api.enabled = false --- > endpoint.api.enabled = true 113,114c113,114 < endpoint.api.username = < endpoint.api.secret = --- > endpoint.api.username = myUserName > endpoint.api.secret = myPassword 122c122 < source.static = FilesystemSource --- > source.static = HttpSource 126c126 < source.delegate = false --- > source.delegate = true 139c139 < FilesystemSource.BasicLookupStrategy.path_prefix = /home/myself/images/ --- > FilesystemSource.BasicLookupStrategy.path_prefix = /mnt/archicantadata/ 150c150 < HttpSource.allow_insecure = false --- > HttpSource.allow_insecure = true 153c153 < HttpSource.request_timeout = --- > HttpSource.request_timeout = 20 162c162 < HttpSource.BasicLookupStrategy.url_prefix = http://localhost/images/ --- > HttpSource.BasicLookupStrategy.url_prefix = 169,170c169,170 < HttpSource.BasicLookupStrategy.auth.basic.username = < HttpSource.BasicLookupStrategy.auth.basic.secret = --- > HttpSource.BasicLookupStrategy.auth.basic.username = anonymous > HttpSource.BasicLookupStrategy.auth.basic.secret = anonymous 297c297 < processor.selection_strategy = AutomaticSelectionStrategy --- > processor.selection_strategy = ManualSelectionStrategy 318c318 < processor.ManualSelectionStrategy.tif = --- > processor.ManualSelectionStrategy.tif = 337c337 < processor.stream_retrieval_strategy = StreamStrategy --- > processor.stream_retrieval_strategy = CacheStrategy 351c351 < processor.background_color = white --- > processor.background_color = black 466c466 < cache.server.source.ttl_seconds = 2592000 --- > cache.server.source.ttl_seconds = 172800 469c469 < cache.server.derivative.enabled = false --- > cache.server.derivative.enabled = true 473c473 < cache.server.derivative = --- > cache.server.derivative = FilesystemCache 477c477 < cache.server.derivative.ttl_seconds = 2592000 --- > cache.server.derivative.ttl_seconds = 172800 496c496 < cache.server.worker.enabled = false --- > cache.server.worker.enabled = true 507c507 < FilesystemCache.pathname = /var/cache/cantaloupe --- > FilesystemCache.pathname = /srv/cache 690c690 < log.application.level = debug --- > log.application.level = info 692c692 < log.application.ConsoleAppender.enabled = true --- > log.application.ConsoleAppender.enabled = false 696c696 < log.application.FileAppender.pathname = /path/to/logs/application.log --- > log.application.FileAppender.pathname = /srv/log/application.log 698,699c698,699 < log.application.RollingFileAppender.enabled = false < log.application.RollingFileAppender.pathname = /path/to/logs/application.log --- > log.application.RollingFileAppender.enabled = true > log.application.RollingFileAppender.pathname = /srv/log/application.log 701c701 < log.application.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/application-%d{yyyy-MM-dd}.log --- > log.application.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /srv/log/application-%d{yyyy-MM-dd}.log 720c720 < log.error.FileAppender.pathname = /path/to/logs/error.log --- > log.error.FileAppender.pathname = /srv/log/error.log 722,723c722,723 < log.error.RollingFileAppender.enabled = false < log.error.RollingFileAppender.pathname = /path/to/logs/error.log --- > log.error.RollingFileAppender.enabled = true > log.error.RollingFileAppender.pathname = /srv/log/error.log 725c725 < log.error.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/error-%d{yyyy-MM-dd}.log --- > log.error.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /srv/log/error-%d{yyyy-MM-dd}.log 736c736 < log.access.FileAppender.pathname = /path/to/logs/access.log --- > log.access.FileAppender.pathname = /srv/log/access.log 741c741 < log.access.RollingFileAppender.pathname = /path/to/logs/access.log --- > log.access.RollingFileAppender.pathname = /srv/log/access.log 743c743 < log.access.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /path/to/logs/access-%d{yyyy-MM-dd}.log --- > log.access.RollingFileAppender.TimeBasedRollingPolicy.filename_pattern = /srv/log/access-%d{yyyy-MM-dd}.log * Start as service nano -w /etc/systemd/system/cantaloupe.service [Unit] Description=Cantaloupe Image Server [Service] Type=simple User=cantaloupe ExecStart=/usr/bin/java -Dcantaloupe.config=/opt/cantaloupe-4.1/cantaloupe.properties -Xmx12g -jar /opt/cantaloupe-4.1/cantaloupe-4.1.war ExecStop=/usr/bin/killall -9 cantaloupe-4.1.war Restart=on-failure [Install] WantedBy=multi-user.target systemctl daemon-reload systemctl enable cantaloupe.service service cantaloupe start