├── entrypoint.sh ├── config.ru ├── docker-compose.yml ├── Dockerfile ├── .travis.yml ├── LICENSE ├── .github └── ISSUE_TEMPLATE │ ├── documentation.yaml │ ├── feature.yaml │ └── bug.yaml └── README.md /entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | resque-web -FL -r "redis://${RESQUE_WEB_HOST}:${RESQUE_WEB_PORT}" /config.ru -------------------------------------------------------------------------------- /config.ru: -------------------------------------------------------------------------------- 1 | if !ENV['RESQUE_WEB_HTTP_BASIC_AUTH_USER'].nil? && !ENV['RESQUE_WEB_HTTP_BASIC_AUTH_USER'].empty? 2 | Resque::Server.use Rack::Auth::Basic do |username, password| 3 | username == ENV['RESQUE_WEB_HTTP_BASIC_AUTH_USER'] 4 | password == ENV['RESQUE_WEB_HTTP_BASIC_AUTH_PASSWORD'] 5 | end 6 | end -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | 3 | services: 4 | redis: 5 | image: redis:5.0 6 | container_name: resque-redis 7 | restart: unless-stopped 8 | networks: 9 | - resque 10 | 11 | resque: 12 | container_name: resque-ui 13 | build: 14 | context: . 15 | restart: unless-stopped 16 | networks: 17 | - resque 18 | ports: 19 | - "5600:5678" 20 | environment: 21 | - RESQUE_WEB_HOST=redis 22 | - RESQUE_WEB_PORT=6379 23 | 24 | networks: 25 | resque: 26 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ruby:2.7-alpine 2 | 3 | LABEL maintainer="team@appwrite.io" 4 | 5 | RUN apk add --no-cache bash ruby-dev zlib-dev build-base && \ 6 | rm -f /var/cache/apk/* && \ 7 | gem install --no-document redis resque-web resque-scheduler-web && \ 8 | apk del ruby-dev zlib-dev build-base 9 | 10 | ADD ./config.ru /config.ru 11 | ADD ./entrypoint.sh /entrypoint.sh 12 | 13 | RUN chmod 775 /entrypoint.sh 14 | 15 | ENV RESQUE_WEB_HOST 127.0.0.1 16 | ENV RESQUE_WEB_PORT 6379 17 | 18 | ENTRYPOINT ["/entrypoint.sh"] 19 | 20 | EXPOSE 5678 21 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: php 2 | 3 | php: 4 | - '7.4' 5 | 6 | notifications: 7 | email: 8 | - team@appwrite.io 9 | 10 | services: 11 | - docker 12 | 13 | before_install: 14 | - > 15 | if [ ! -z "${DOCKERHUB_PULL_USERNAME:-}" ]; then 16 | echo "${DOCKERHUB_PULL_PASSWORD}" | docker login --username "${DOCKERHUB_PULL_USERNAME}" --password-stdin 17 | fi 18 | 19 | install: 20 | - docker-compose up -d 21 | - sleep 10 22 | 23 | script: 24 | - docker ps 25 | - > 26 | if : >/dev/tcp/localhost/5600; then 27 | echo 'Internet available.' 28 | exit 0 29 | else 30 | echo 'Offline.' 31 | exit 1 32 | fi 33 | 34 | deploy: 35 | - provider: script 36 | edge: true 37 | script: docker build -t appwrite/resque-web:$TRAVIS_TAG ./ --push 38 | on: 39 | tags: true -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Appwrite.io 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/documentation.yaml: -------------------------------------------------------------------------------- 1 | name: "📚 Documentation" 2 | description: "Report an issue related to documentation" 3 | title: "📚 Documentation: " 4 | labels: [documentation] 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Thanks for taking the time to make our documentation better 🙏 10 | - type: textarea 11 | id: issue-description 12 | validations: 13 | required: true 14 | attributes: 15 | label: "💭 Description" 16 | description: "A clear and concise description of what the issue is." 17 | placeholder: "Documentation should not ..." 18 | - type: checkboxes 19 | id: no-duplicate-issues 20 | attributes: 21 | label: "👀 Have you spent some time to check if this issue has been raised before?" 22 | description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" 23 | options: 24 | - label: "I checked and didn't find similar issue" 25 | required: true 26 | - type: checkboxes 27 | id: read-code-of-conduct 28 | attributes: 29 | label: "🏢 Have you read the Code of Conduct?" 30 | options: 31 | - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" 32 | required: true -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature.yaml: -------------------------------------------------------------------------------- 1 | name: 🚀 Feature 2 | description: "Submit a proposal for a new feature" 3 | title: "🚀 Feature: " 4 | labels: [feature] 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Thanks for taking the time to fill out our feature request form 🙏 10 | - type: textarea 11 | id: feature-description 12 | validations: 13 | required: true 14 | attributes: 15 | label: "🔖 Feature description" 16 | description: "A clear and concise description of what the feature is." 17 | placeholder: "You should add ..." 18 | - type: textarea 19 | id: pitch 20 | validations: 21 | required: true 22 | attributes: 23 | label: "🎤 Pitch" 24 | description: "Please explain why this feature should be implemented and how it would be used. Add examples, if applicable." 25 | placeholder: "In my use-case, ..." 26 | - type: checkboxes 27 | id: no-duplicate-issues 28 | attributes: 29 | label: "👀 Have you spent some time to check if this issue has been raised before?" 30 | description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" 31 | options: 32 | - label: "I checked and didn't find similar issue" 33 | required: true 34 | - type: checkboxes 35 | id: read-code-of-conduct 36 | attributes: 37 | label: "🏢 Have you read the Code of Conduct?" 38 | options: 39 | - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" 40 | required: true -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Docker Resque Web UI 2 | 3 | [![Discord](https://img.shields.io/discord/564160730845151244?label=discord&style=flat-square)](https://appwrite.io/discord) 4 | [![Docker Pulls](https://img.shields.io/docker/pulls/appwrite/resque-web?color=f02e65&style=flat-square)](https://hub.docker.com/r/appwrite/resque-web) 5 | [![Build Status](https://img.shields.io/travis/com/appwrite/docker-resque-ui?style=flat-square)](https://travis-ci.com/appwrite/docker-resque-ui) 6 | [![Twitter Account](https://img.shields.io/twitter/follow/appwrite?color=00acee&label=twitter&style=flat-square)](https://twitter.com/appwrite) 7 | [![Follow Appwrite on StackShare](https://img.shields.io/badge/follow%20on-stackshare-blue?style=flat-square)](https://stackshare.io/appwrite) 8 | 9 | User interface container for the Redis [Resque Web UI](https://github.com/resque/resque-web) project. This container include default configuration to allow HTTP basic auth. Not recommended for production environments not running behind a network firewall. 10 | 11 | ## Usage 12 | 13 | docker-compose.yml 14 | ```yml 15 | resque: 16 | image: appwrite/resque-web:1.1.0 17 | links: 18 | - redis:redisserver 19 | ports: 20 | - "5678:5678" 21 | environment: 22 | - RESQUE_WEB_HOST=redisserver # (OPTIONAL - Use only if different than the default 127.0.0.1) 23 | - RESQUE_WEB_PORT=6379 # (OPTIONAL - Use only if different the default 6379) 24 | - RESQUE_WEB_HTTP_BASIC_AUTH_USER=user # (OPTIONAL - if not set no password used) 25 | - RESQUE_WEB_HTTP_BASIC_AUTH_PASSWORD=password # (OPTIONAL - if not set no password used) 26 | ``` 27 | 28 | or with docker run 29 | ```bash 30 | docker run --rm -p 5678:5678 appwrite/resque-web:v1.0.0 31 | ``` 32 | 33 | ## Build 34 | ```bash 35 | docker build -t appwrite/resque-web:1.0.0 . 36 | ``` 37 | 38 | ## Push 39 | ```bash 40 | docker push appwrite/resque-web:1.0.0 41 | ``` 42 | 43 | ## Find Us 44 | 45 | * [GitHub](https://github.com/appwrite) 46 | * [Discord](https://appwrite.io/discord) 47 | * [Twitter](https://twitter.com/appwrite) 48 | 49 | ## Copyright and license 50 | 51 | The MIT License (MIT) [http://www.opensource.org/licenses/mit-license.php](http://www.opensource.org/licenses/mit-license.php) 52 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug.yaml: -------------------------------------------------------------------------------- 1 | name: "🐛 Bug Report" 2 | description: "Submit a bug report to help us improve" 3 | title: "🐛 Bug Report: " 4 | labels: [bug] 5 | body: 6 | - type: markdown 7 | attributes: 8 | value: | 9 | Thanks for taking the time to fill out our bug report form 🙏 10 | - type: textarea 11 | id: steps-to-reproduce 12 | validations: 13 | required: true 14 | attributes: 15 | label: "👟 Reproduction steps" 16 | description: "How do you trigger this bug? Please walk us through it step by step." 17 | placeholder: "When I ..." 18 | - type: textarea 19 | id: expected-behavior 20 | validations: 21 | required: true 22 | attributes: 23 | label: "👍 Expected behavior" 24 | description: "What did you think would happen?" 25 | placeholder: "It should ..." 26 | - type: textarea 27 | id: actual-behavior 28 | validations: 29 | required: true 30 | attributes: 31 | label: "👎 Actual Behavior" 32 | description: "What did actually happen? Add screenshots, if applicable." 33 | placeholder: "It actually ..." 34 | - type: dropdown 35 | id: appwrite-version 36 | attributes: 37 | label: "🎲 Appwrite version" 38 | description: "What version of Appwrite are you running?" 39 | options: 40 | - Version 0.10.x 41 | - Version 0.9.x 42 | - Version 0.8.x 43 | - Version 0.7.x 44 | - Version 0.6.x 45 | - Different version (specify in environment) 46 | validations: 47 | required: true 48 | - type: dropdown 49 | id: operating-system 50 | attributes: 51 | label: "💻 Operating system" 52 | description: "What OS is your server / device running on?" 53 | options: 54 | - Linux 55 | - MacOS 56 | - Windows 57 | - Something else 58 | validations: 59 | required: true 60 | - type: textarea 61 | id: enviromnemt 62 | validations: 63 | required: false 64 | attributes: 65 | label: "🧱 Your Environment" 66 | description: "Is your environment customized in any way?" 67 | placeholder: "I use Cloudflare for ..." 68 | - type: checkboxes 69 | id: no-duplicate-issues 70 | attributes: 71 | label: "👀 Have you spent some time to check if this issue has been raised before?" 72 | description: "Have you Googled for a similar issue or checked our older issues for a similar bug?" 73 | options: 74 | - label: "I checked and didn't find similar issue" 75 | required: true 76 | - type: checkboxes 77 | id: read-code-of-conduct 78 | attributes: 79 | label: "🏢 Have you read the Code of Conduct?" 80 | options: 81 | - label: "I have read the [Code of Conduct](https://github.com/appwrite/appwrite/blob/HEAD/CODE_OF_CONDUCT.md)" 82 | required: true --------------------------------------------------------------------------------